/***************************************************************************
 *     Copyright (c) 1999-2010, 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         Fri Jan 22 20:15:15 2010
 *                 MD5 Checksum         a2d1f2163f65e87d228a0fb491cb442d
 *
 * 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/7125/rdb/c0/bchp_usb_ehci.h $
 * 
 * Hydra_Software_Devel/1   1/25/10 10:07p albertl
 * SW7125-177: Initial revision.
 *
 ***************************************************************************/

#ifndef BCHP_USB_EHCI_H__
#define BCHP_USB_EHCI_H__

/***************************************************************************
 *USB_EHCI - USB EHCI 1 Control Registers
 ***************************************************************************/
#define BCHP_USB_EHCI_HCCAPBASE                  0x00488300 /* EHCI Capability Register */
#define BCHP_USB_EHCI_HCSPARAMS                  0x00488304 /* EHCI Structural Parameter */
#define BCHP_USB_EHCI_HCCPARAMS                  0x00488308 /* EHCI Capability Parameter */
#define BCHP_USB_EHCI_USBCMD                     0x00488310 /* USB Command Register */
#define BCHP_USB_EHCI_USBSTS                     0x00488314 /* USB Status  Register */
#define BCHP_USB_EHCI_USBINTR                    0x00488318 /* USB Interrupt Enable Register */
#define BCHP_USB_EHCI_FRINDEX                    0x0048831c /* USB Frame Index Register */
#define BCHP_USB_EHCI_PERIODICLISTBASE           0x00488324 /* Periodic Frame List Base Address Register */
#define BCHP_USB_EHCI_ASYNCLISTADDR              0x00488328 /* Asynchronous List Address */
#define BCHP_USB_EHCI_CONFIGFLAG                 0x00488350 /* Configured Flag Register */
#define BCHP_USB_EHCI_PORTSC_0                   0x00488354 /* Port Status/Control Register for Port 0 */
#define BCHP_USB_EHCI_PORTSC_1                   0x00488358 /* Port Status/Control Register for Port 1 */
#define BCHP_USB_EHCI_INSNREG00                  0x00488390 /* Microframe Base Value Register */
#define BCHP_USB_EHCI_INSNREG01                  0x00488394 /* Packet Buffer OUT/IN Threshold Register */
#define BCHP_USB_EHCI_INSNREG02                  0x00488398 /* Packet Buffer Depth Register */
#define BCHP_USB_EHCI_INSNREG03                  0x0048839c /* Break Memory Transfer Register */
#define BCHP_USB_EHCI_INSNREG04                  0x004883a0 /* Debug Register */
#define BCHP_USB_EHCI_INSNREG05                  0x004883a4 /* UTMI Control and Status Register */

/***************************************************************************
 *HCCAPBASE - EHCI Capability Register
 ***************************************************************************/
/* USB_EHCI :: HCCAPBASE :: HCIVERSION [31:16] */
#define BCHP_USB_EHCI_HCCAPBASE_HCIVERSION_MASK                    0xffff0000
#define BCHP_USB_EHCI_HCCAPBASE_HCIVERSION_SHIFT                   16

/* USB_EHCI :: HCCAPBASE :: reserved0 [15:08] */
#define BCHP_USB_EHCI_HCCAPBASE_reserved0_MASK                     0x0000ff00
#define BCHP_USB_EHCI_HCCAPBASE_reserved0_SHIFT                    8

/* USB_EHCI :: HCCAPBASE :: CAPLENGTH [07:00] */
#define BCHP_USB_EHCI_HCCAPBASE_CAPLENGTH_MASK                     0x000000ff
#define BCHP_USB_EHCI_HCCAPBASE_CAPLENGTH_SHIFT                    0

/***************************************************************************
 *HCSPARAMS - EHCI Structural Parameter
 ***************************************************************************/
/* USB_EHCI :: HCSPARAMS :: reserved0 [31:24] */
#define BCHP_USB_EHCI_HCSPARAMS_reserved0_MASK                     0xff000000
#define BCHP_USB_EHCI_HCSPARAMS_reserved0_SHIFT                    24

/* USB_EHCI :: HCSPARAMS :: DEBUG_PORT_NUMBER [23:20] */
#define BCHP_USB_EHCI_HCSPARAMS_DEBUG_PORT_NUMBER_MASK             0x00f00000
#define BCHP_USB_EHCI_HCSPARAMS_DEBUG_PORT_NUMBER_SHIFT            20

/* USB_EHCI :: HCSPARAMS :: reserved1 [19:17] */
#define BCHP_USB_EHCI_HCSPARAMS_reserved1_MASK                     0x000e0000
#define BCHP_USB_EHCI_HCSPARAMS_reserved1_SHIFT                    17

/* USB_EHCI :: HCSPARAMS :: P_INDICATOR [16:16] */
#define BCHP_USB_EHCI_HCSPARAMS_P_INDICATOR_MASK                   0x00010000
#define BCHP_USB_EHCI_HCSPARAMS_P_INDICATOR_SHIFT                  16

/* USB_EHCI :: HCSPARAMS :: N_CC [15:12] */
#define BCHP_USB_EHCI_HCSPARAMS_N_CC_MASK                          0x0000f000
#define BCHP_USB_EHCI_HCSPARAMS_N_CC_SHIFT                         12

/* USB_EHCI :: HCSPARAMS :: N_PCC [11:08] */
#define BCHP_USB_EHCI_HCSPARAMS_N_PCC_MASK                         0x00000f00
#define BCHP_USB_EHCI_HCSPARAMS_N_PCC_SHIFT                        8

/* USB_EHCI :: HCSPARAMS :: PORT_ROUTING_RULES [07:07] */
#define BCHP_USB_EHCI_HCSPARAMS_PORT_ROUTING_RULES_MASK            0x00000080
#define BCHP_USB_EHCI_HCSPARAMS_PORT_ROUTING_RULES_SHIFT           7

/* USB_EHCI :: HCSPARAMS :: reserved2 [06:05] */
#define BCHP_USB_EHCI_HCSPARAMS_reserved2_MASK                     0x00000060
#define BCHP_USB_EHCI_HCSPARAMS_reserved2_SHIFT                    5

/* USB_EHCI :: HCSPARAMS :: PPC [04:04] */
#define BCHP_USB_EHCI_HCSPARAMS_PPC_MASK                           0x00000010
#define BCHP_USB_EHCI_HCSPARAMS_PPC_SHIFT                          4

/* USB_EHCI :: HCSPARAMS :: N_PORTS [03:00] */
#define BCHP_USB_EHCI_HCSPARAMS_N_PORTS_MASK                       0x0000000f
#define BCHP_USB_EHCI_HCSPARAMS_N_PORTS_SHIFT                      0

/***************************************************************************
 *HCCPARAMS - EHCI Capability Parameter
 ***************************************************************************/
/* USB_EHCI :: HCCPARAMS :: reserved0 [31:16] */
#define BCHP_USB_EHCI_HCCPARAMS_reserved0_MASK                     0xffff0000
#define BCHP_USB_EHCI_HCCPARAMS_reserved0_SHIFT                    16

/* USB_EHCI :: HCCPARAMS :: EECP [15:08] */
#define BCHP_USB_EHCI_HCCPARAMS_EECP_MASK                          0x0000ff00
#define BCHP_USB_EHCI_HCCPARAMS_EECP_SHIFT                         8

/* USB_EHCI :: HCCPARAMS :: ISOCHRONOUS_SCHEDULING_THRESHOLD [07:04] */
#define BCHP_USB_EHCI_HCCPARAMS_ISOCHRONOUS_SCHEDULING_THRESHOLD_MASK 0x000000f0
#define BCHP_USB_EHCI_HCCPARAMS_ISOCHRONOUS_SCHEDULING_THRESHOLD_SHIFT 4

/* USB_EHCI :: HCCPARAMS :: reserved1 [03:03] */
#define BCHP_USB_EHCI_HCCPARAMS_reserved1_MASK                     0x00000008
#define BCHP_USB_EHCI_HCCPARAMS_reserved1_SHIFT                    3

/* USB_EHCI :: HCCPARAMS :: ASYNCHRONOUS_SCHEDULE_PARK_CAPABILITY [02:02] */
#define BCHP_USB_EHCI_HCCPARAMS_ASYNCHRONOUS_SCHEDULE_PARK_CAPABILITY_MASK 0x00000004
#define BCHP_USB_EHCI_HCCPARAMS_ASYNCHRONOUS_SCHEDULE_PARK_CAPABILITY_SHIFT 2

/* USB_EHCI :: HCCPARAMS :: PROGRAMMABLE_FRAME_LIST_FLAG [01:01] */
#define BCHP_USB_EHCI_HCCPARAMS_PROGRAMMABLE_FRAME_LIST_FLAG_MASK  0x00000002
#define BCHP_USB_EHCI_HCCPARAMS_PROGRAMMABLE_FRAME_LIST_FLAG_SHIFT 1

/* USB_EHCI :: HCCPARAMS :: SIXTY_FOUR_BIT_ADDRESSING_CAPABILITY [00:00] */
#define BCHP_USB_EHCI_HCCPARAMS_SIXTY_FOUR_BIT_ADDRESSING_CAPABILITY_MASK 0x00000001
#define BCHP_USB_EHCI_HCCPARAMS_SIXTY_FOUR_BIT_ADDRESSING_CAPABILITY_SHIFT 0

/***************************************************************************
 *USBCMD - USB Command Register
 ***************************************************************************/
/* USB_EHCI :: USBCMD :: reserved3 [31:24] */
#define BCHP_USB_EHCI_USBCMD_reserved3_MASK                        0xff000000
#define BCHP_USB_EHCI_USBCMD_reserved3_SHIFT                       24

/* USB_EHCI :: USBCMD :: INTERRUPT_THRESHOLD_CONTROL [23:16] */
#define BCHP_USB_EHCI_USBCMD_INTERRUPT_THRESHOLD_CONTROL_MASK      0x00ff0000
#define BCHP_USB_EHCI_USBCMD_INTERRUPT_THRESHOLD_CONTROL_SHIFT     16

/* USB_EHCI :: USBCMD :: reserved2 [15:12] */
#define BCHP_USB_EHCI_USBCMD_reserved2_MASK                        0x0000f000
#define BCHP_USB_EHCI_USBCMD_reserved2_SHIFT                       12

/* USB_EHCI :: USBCMD :: ASYNCHRONOUS_SCHEDULE_PARK_MODE_ENABLE [11:11] */
#define BCHP_USB_EHCI_USBCMD_ASYNCHRONOUS_SCHEDULE_PARK_MODE_ENABLE_MASK 0x00000800
#define BCHP_USB_EHCI_USBCMD_ASYNCHRONOUS_SCHEDULE_PARK_MODE_ENABLE_SHIFT 11

/* USB_EHCI :: USBCMD :: reserved1 [10:10] */
#define BCHP_USB_EHCI_USBCMD_reserved1_MASK                        0x00000400
#define BCHP_USB_EHCI_USBCMD_reserved1_SHIFT                       10

/* USB_EHCI :: USBCMD :: ASYNCHRONOUS_SCHEDULE_PARK_MODE_COUNT [09:08] */
#define BCHP_USB_EHCI_USBCMD_ASYNCHRONOUS_SCHEDULE_PARK_MODE_COUNT_MASK 0x00000300
#define BCHP_USB_EHCI_USBCMD_ASYNCHRONOUS_SCHEDULE_PARK_MODE_COUNT_SHIFT 8

/* USB_EHCI :: USBCMD :: LIGHT_HOST_CONTROLLER_RESET [07:07] */
#define BCHP_USB_EHCI_USBCMD_LIGHT_HOST_CONTROLLER_RESET_MASK      0x00000080
#define BCHP_USB_EHCI_USBCMD_LIGHT_HOST_CONTROLLER_RESET_SHIFT     7

/* USB_EHCI :: USBCMD :: INTERRUPT_ON_ASYNC_ADVANCE_DOORBELL [06:06] */
#define BCHP_USB_EHCI_USBCMD_INTERRUPT_ON_ASYNC_ADVANCE_DOORBELL_MASK 0x00000040
#define BCHP_USB_EHCI_USBCMD_INTERRUPT_ON_ASYNC_ADVANCE_DOORBELL_SHIFT 6

/* USB_EHCI :: USBCMD :: ASYNCHRONOUS_SCHEDULE_ENABLE [05:05] */
#define BCHP_USB_EHCI_USBCMD_ASYNCHRONOUS_SCHEDULE_ENABLE_MASK     0x00000020
#define BCHP_USB_EHCI_USBCMD_ASYNCHRONOUS_SCHEDULE_ENABLE_SHIFT    5

/* USB_EHCI :: USBCMD :: PERIODIC_SCHEDULE_ENABLE [04:04] */
#define BCHP_USB_EHCI_USBCMD_PERIODIC_SCHEDULE_ENABLE_MASK         0x00000010
#define BCHP_USB_EHCI_USBCMD_PERIODIC_SCHEDULE_ENABLE_SHIFT        4

/* USB_EHCI :: USBCMD :: FRAME_LIST_SIZE [03:02] */
#define BCHP_USB_EHCI_USBCMD_FRAME_LIST_SIZE_MASK                  0x0000000c
#define BCHP_USB_EHCI_USBCMD_FRAME_LIST_SIZE_SHIFT                 2

/* USB_EHCI :: USBCMD :: HCRESET [01:01] */
#define BCHP_USB_EHCI_USBCMD_HCRESET_MASK                          0x00000002
#define BCHP_USB_EHCI_USBCMD_HCRESET_SHIFT                         1

/* USB_EHCI :: USBCMD :: RUN_STOP [00:00] */
#define BCHP_USB_EHCI_USBCMD_RUN_STOP_MASK                         0x00000001
#define BCHP_USB_EHCI_USBCMD_RUN_STOP_SHIFT                        0

/***************************************************************************
 *USBSTS - USB Status  Register
 ***************************************************************************/
/* USB_EHCI :: USBSTS :: reserved0 [31:16] */
#define BCHP_USB_EHCI_USBSTS_reserved0_MASK                        0xffff0000
#define BCHP_USB_EHCI_USBSTS_reserved0_SHIFT                       16

/* USB_EHCI :: USBSTS :: ASYNCHRONOUS_SCHEDULE_STATUS [15:15] */
#define BCHP_USB_EHCI_USBSTS_ASYNCHRONOUS_SCHEDULE_STATUS_MASK     0x00008000
#define BCHP_USB_EHCI_USBSTS_ASYNCHRONOUS_SCHEDULE_STATUS_SHIFT    15

/* USB_EHCI :: USBSTS :: PERIODIC_SCHEDULE_STATUS [14:14] */
#define BCHP_USB_EHCI_USBSTS_PERIODIC_SCHEDULE_STATUS_MASK         0x00004000
#define BCHP_USB_EHCI_USBSTS_PERIODIC_SCHEDULE_STATUS_SHIFT        14

/* USB_EHCI :: USBSTS :: RECLAMATION [13:13] */
#define BCHP_USB_EHCI_USBSTS_RECLAMATION_MASK                      0x00002000
#define BCHP_USB_EHCI_USBSTS_RECLAMATION_SHIFT                     13

/* USB_EHCI :: USBSTS :: HCHALTED [12:12] */
#define BCHP_USB_EHCI_USBSTS_HCHALTED_MASK                         0x00001000
#define BCHP_USB_EHCI_USBSTS_HCHALTED_SHIFT                        12

/* USB_EHCI :: USBSTS :: reserved1 [11:06] */
#define BCHP_USB_EHCI_USBSTS_reserved1_MASK                        0x00000fc0
#define BCHP_USB_EHCI_USBSTS_reserved1_SHIFT                       6

/* USB_EHCI :: USBSTS :: INTERRUPT_ON_ASYNC_ADVANCE [05:05] */
#define BCHP_USB_EHCI_USBSTS_INTERRUPT_ON_ASYNC_ADVANCE_MASK       0x00000020
#define BCHP_USB_EHCI_USBSTS_INTERRUPT_ON_ASYNC_ADVANCE_SHIFT      5

/* USB_EHCI :: USBSTS :: HOST_SYSTEM_ERROR [04:04] */
#define BCHP_USB_EHCI_USBSTS_HOST_SYSTEM_ERROR_MASK                0x00000010
#define BCHP_USB_EHCI_USBSTS_HOST_SYSTEM_ERROR_SHIFT               4

/* USB_EHCI :: USBSTS :: FRAME_LIST_ROLLOVER [03:03] */
#define BCHP_USB_EHCI_USBSTS_FRAME_LIST_ROLLOVER_MASK              0x00000008
#define BCHP_USB_EHCI_USBSTS_FRAME_LIST_ROLLOVER_SHIFT             3

/* USB_EHCI :: USBSTS :: PORT_CHANGE_DETECT [02:02] */
#define BCHP_USB_EHCI_USBSTS_PORT_CHANGE_DETECT_MASK               0x00000004
#define BCHP_USB_EHCI_USBSTS_PORT_CHANGE_DETECT_SHIFT              2

/* USB_EHCI :: USBSTS :: USBERRINT [01:01] */
#define BCHP_USB_EHCI_USBSTS_USBERRINT_MASK                        0x00000002
#define BCHP_USB_EHCI_USBSTS_USBERRINT_SHIFT                       1

/* USB_EHCI :: USBSTS :: USBINT [00:00] */
#define BCHP_USB_EHCI_USBSTS_USBINT_MASK                           0x00000001
#define BCHP_USB_EHCI_USBSTS_USBINT_SHIFT                          0

/***************************************************************************
 *USBINTR - USB Interrupt Enable Register
 ***************************************************************************/
/* USB_EHCI :: USBINTR :: reserved0 [31:06] */
#define BCHP_USB_EHCI_USBINTR_reserved0_MASK                       0xffffffc0
#define BCHP_USB_EHCI_USBINTR_reserved0_SHIFT                      6

/* USB_EHCI :: USBINTR :: INTERRUPT_ON_ASYNC_ADVANCE_ENABLE [05:05] */
#define BCHP_USB_EHCI_USBINTR_INTERRUPT_ON_ASYNC_ADVANCE_ENABLE_MASK 0x00000020
#define BCHP_USB_EHCI_USBINTR_INTERRUPT_ON_ASYNC_ADVANCE_ENABLE_SHIFT 5

/* USB_EHCI :: USBINTR :: HOST_SYSTEM_ERROR_ENABLE [04:04] */
#define BCHP_USB_EHCI_USBINTR_HOST_SYSTEM_ERROR_ENABLE_MASK        0x00000010
#define BCHP_USB_EHCI_USBINTR_HOST_SYSTEM_ERROR_ENABLE_SHIFT       4

/* USB_EHCI :: USBINTR :: FRAME_LIST_ROLLOVER_ENABLE [03:03] */
#define BCHP_USB_EHCI_USBINTR_FRAME_LIST_ROLLOVER_ENABLE_MASK      0x00000008
#define BCHP_USB_EHCI_USBINTR_FRAME_LIST_ROLLOVER_ENABLE_SHIFT     3

/* USB_EHCI :: USBINTR :: PORT_CHANGE_INTERRUPT_ENABLE [02:02] */
#define BCHP_USB_EHCI_USBINTR_PORT_CHANGE_INTERRUPT_ENABLE_MASK    0x00000004
#define BCHP_USB_EHCI_USBINTR_PORT_CHANGE_INTERRUPT_ENABLE_SHIFT   2

/* USB_EHCI :: USBINTR :: USB_ERROR_INTERRUPT_ENABLE [01:01] */
#define BCHP_USB_EHCI_USBINTR_USB_ERROR_INTERRUPT_ENABLE_MASK      0x00000002
#define BCHP_USB_EHCI_USBINTR_USB_ERROR_INTERRUPT_ENABLE_SHIFT     1

/* USB_EHCI :: USBINTR :: USB_INTERRUPT_ENABLE [00:00] */
#define BCHP_USB_EHCI_USBINTR_USB_INTERRUPT_ENABLE_MASK            0x00000001
#define BCHP_USB_EHCI_USBINTR_USB_INTERRUPT_ENABLE_SHIFT           0

/***************************************************************************
 *FRINDEX - USB Frame Index Register
 ***************************************************************************/
/* USB_EHCI :: FRINDEX :: reserved0 [31:14] */
#define BCHP_USB_EHCI_FRINDEX_reserved0_MASK                       0xffffc000
#define BCHP_USB_EHCI_FRINDEX_reserved0_SHIFT                      14

/* USB_EHCI :: FRINDEX :: FRAME_INDEX [13:00] */
#define BCHP_USB_EHCI_FRINDEX_FRAME_INDEX_MASK                     0x00003fff
#define BCHP_USB_EHCI_FRINDEX_FRAME_INDEX_SHIFT                    0

/***************************************************************************
 *PERIODICLISTBASE - Periodic Frame List Base Address Register
 ***************************************************************************/
/* USB_EHCI :: PERIODICLISTBASE :: BASE_ADDRESS_LOW [31:12] */
#define BCHP_USB_EHCI_PERIODICLISTBASE_BASE_ADDRESS_LOW_MASK       0xfffff000
#define BCHP_USB_EHCI_PERIODICLISTBASE_BASE_ADDRESS_LOW_SHIFT      12

/* USB_EHCI :: PERIODICLISTBASE :: reserved0 [11:00] */
#define BCHP_USB_EHCI_PERIODICLISTBASE_reserved0_MASK              0x00000fff
#define BCHP_USB_EHCI_PERIODICLISTBASE_reserved0_SHIFT             0

/***************************************************************************
 *ASYNCLISTADDR - Asynchronous List Address
 ***************************************************************************/
/* USB_EHCI :: ASYNCLISTADDR :: LPL [31:05] */
#define BCHP_USB_EHCI_ASYNCLISTADDR_LPL_MASK                       0xffffffe0
#define BCHP_USB_EHCI_ASYNCLISTADDR_LPL_SHIFT                      5

/* USB_EHCI :: ASYNCLISTADDR :: reserved0 [04:00] */
#define BCHP_USB_EHCI_ASYNCLISTADDR_reserved0_MASK                 0x0000001f
#define BCHP_USB_EHCI_ASYNCLISTADDR_reserved0_SHIFT                0

/***************************************************************************
 *CONFIGFLAG - Configured Flag Register
 ***************************************************************************/
/* USB_EHCI :: CONFIGFLAG :: reserved0 [31:01] */
#define BCHP_USB_EHCI_CONFIGFLAG_reserved0_MASK                    0xfffffffe
#define BCHP_USB_EHCI_CONFIGFLAG_reserved0_SHIFT                   1

/* USB_EHCI :: CONFIGFLAG :: CONFIGURE_FLAG [00:00] */
#define BCHP_USB_EHCI_CONFIGFLAG_CONFIGURE_FLAG_MASK               0x00000001
#define BCHP_USB_EHCI_CONFIGFLAG_CONFIGURE_FLAG_SHIFT              0

/***************************************************************************
 *PORTSC_0 - Port Status/Control Register for Port 0
 ***************************************************************************/
/* USB_EHCI :: PORTSC_0 :: reserved0 [31:23] */
#define BCHP_USB_EHCI_PORTSC_0_reserved0_MASK                      0xff800000
#define BCHP_USB_EHCI_PORTSC_0_reserved0_SHIFT                     23

/* USB_EHCI :: PORTSC_0 :: WKOC_E [22:22] */
#define BCHP_USB_EHCI_PORTSC_0_WKOC_E_MASK                         0x00400000
#define BCHP_USB_EHCI_PORTSC_0_WKOC_E_SHIFT                        22

/* USB_EHCI :: PORTSC_0 :: WKDSCNNT_E [21:21] */
#define BCHP_USB_EHCI_PORTSC_0_WKDSCNNT_E_MASK                     0x00200000
#define BCHP_USB_EHCI_PORTSC_0_WKDSCNNT_E_SHIFT                    21

/* USB_EHCI :: PORTSC_0 :: WKCNNT_E [20:20] */
#define BCHP_USB_EHCI_PORTSC_0_WKCNNT_E_MASK                       0x00100000
#define BCHP_USB_EHCI_PORTSC_0_WKCNNT_E_SHIFT                      20

/* USB_EHCI :: PORTSC_0 :: PORT_TEST_CONTROL [19:16] */
#define BCHP_USB_EHCI_PORTSC_0_PORT_TEST_CONTROL_MASK              0x000f0000
#define BCHP_USB_EHCI_PORTSC_0_PORT_TEST_CONTROL_SHIFT             16

/* USB_EHCI :: PORTSC_0 :: PORT_INDICATOR_CONTROL [15:14] */
#define BCHP_USB_EHCI_PORTSC_0_PORT_INDICATOR_CONTROL_MASK         0x0000c000
#define BCHP_USB_EHCI_PORTSC_0_PORT_INDICATOR_CONTROL_SHIFT        14

/* USB_EHCI :: PORTSC_0 :: PORT_OWNER [13:13] */
#define BCHP_USB_EHCI_PORTSC_0_PORT_OWNER_MASK                     0x00002000
#define BCHP_USB_EHCI_PORTSC_0_PORT_OWNER_SHIFT                    13

/* USB_EHCI :: PORTSC_0 :: PP [12:12] */
#define BCHP_USB_EHCI_PORTSC_0_PP_MASK                             0x00001000
#define BCHP_USB_EHCI_PORTSC_0_PP_SHIFT                            12

/* USB_EHCI :: PORTSC_0 :: LINE_STATUS [11:10] */
#define BCHP_USB_EHCI_PORTSC_0_LINE_STATUS_MASK                    0x00000c00
#define BCHP_USB_EHCI_PORTSC_0_LINE_STATUS_SHIFT                   10

/* USB_EHCI :: PORTSC_0 :: reserved1 [09:09] */
#define BCHP_USB_EHCI_PORTSC_0_reserved1_MASK                      0x00000200
#define BCHP_USB_EHCI_PORTSC_0_reserved1_SHIFT                     9

/* USB_EHCI :: PORTSC_0 :: PORT_RESET [08:08] */
#define BCHP_USB_EHCI_PORTSC_0_PORT_RESET_MASK                     0x00000100
#define BCHP_USB_EHCI_PORTSC_0_PORT_RESET_SHIFT                    8

/* USB_EHCI :: PORTSC_0 :: SUSPEND [07:07] */
#define BCHP_USB_EHCI_PORTSC_0_SUSPEND_MASK                        0x00000080
#define BCHP_USB_EHCI_PORTSC_0_SUSPEND_SHIFT                       7

/* USB_EHCI :: PORTSC_0 :: FORCE_PORT_RESUME [06:06] */
#define BCHP_USB_EHCI_PORTSC_0_FORCE_PORT_RESUME_MASK              0x00000040
#define BCHP_USB_EHCI_PORTSC_0_FORCE_PORT_RESUME_SHIFT             6

/* USB_EHCI :: PORTSC_0 :: OVER_CURRENT_CHANGE [05:05] */
#define BCHP_USB_EHCI_PORTSC_0_OVER_CURRENT_CHANGE_MASK            0x00000020
#define BCHP_USB_EHCI_PORTSC_0_OVER_CURRENT_CHANGE_SHIFT           5

/* USB_EHCI :: PORTSC_0 :: OVER_CURRENT_ACTIVE [04:04] */
#define BCHP_USB_EHCI_PORTSC_0_OVER_CURRENT_ACTIVE_MASK            0x00000010
#define BCHP_USB_EHCI_PORTSC_0_OVER_CURRENT_ACTIVE_SHIFT           4

/* USB_EHCI :: PORTSC_0 :: PORT_ENABLE_DISABLE_CHANGE [03:03] */
#define BCHP_USB_EHCI_PORTSC_0_PORT_ENABLE_DISABLE_CHANGE_MASK     0x00000008
#define BCHP_USB_EHCI_PORTSC_0_PORT_ENABLE_DISABLE_CHANGE_SHIFT    3

/* USB_EHCI :: PORTSC_0 :: PORT_ENABLED_DISABLED [02:02] */
#define BCHP_USB_EHCI_PORTSC_0_PORT_ENABLED_DISABLED_MASK          0x00000004
#define BCHP_USB_EHCI_PORTSC_0_PORT_ENABLED_DISABLED_SHIFT         2

/* USB_EHCI :: PORTSC_0 :: CONNECT_STATUS_CHANGE [01:01] */
#define BCHP_USB_EHCI_PORTSC_0_CONNECT_STATUS_CHANGE_MASK          0x00000002
#define BCHP_USB_EHCI_PORTSC_0_CONNECT_STATUS_CHANGE_SHIFT         1

/* USB_EHCI :: PORTSC_0 :: CURRENT_CONNECT_STATUS [00:00] */
#define BCHP_USB_EHCI_PORTSC_0_CURRENT_CONNECT_STATUS_MASK         0x00000001
#define BCHP_USB_EHCI_PORTSC_0_CURRENT_CONNECT_STATUS_SHIFT        0

/***************************************************************************
 *PORTSC_1 - Port Status/Control Register for Port 1
 ***************************************************************************/
/* USB_EHCI :: PORTSC_1 :: reserved0 [31:23] */
#define BCHP_USB_EHCI_PORTSC_1_reserved0_MASK                      0xff800000
#define BCHP_USB_EHCI_PORTSC_1_reserved0_SHIFT                     23

/* USB_EHCI :: PORTSC_1 :: WKOC_E [22:22] */
#define BCHP_USB_EHCI_PORTSC_1_WKOC_E_MASK                         0x00400000
#define BCHP_USB_EHCI_PORTSC_1_WKOC_E_SHIFT                        22

/* USB_EHCI :: PORTSC_1 :: WKDSCNNT_E [21:21] */
#define BCHP_USB_EHCI_PORTSC_1_WKDSCNNT_E_MASK                     0x00200000
#define BCHP_USB_EHCI_PORTSC_1_WKDSCNNT_E_SHIFT                    21

/* USB_EHCI :: PORTSC_1 :: WKCNNT_E [20:20] */
#define BCHP_USB_EHCI_PORTSC_1_WKCNNT_E_MASK                       0x00100000
#define BCHP_USB_EHCI_PORTSC_1_WKCNNT_E_SHIFT                      20

/* USB_EHCI :: PORTSC_1 :: PORT_TEST_CONTROL [19:16] */
#define BCHP_USB_EHCI_PORTSC_1_PORT_TEST_CONTROL_MASK              0x000f0000
#define BCHP_USB_EHCI_PORTSC_1_PORT_TEST_CONTROL_SHIFT             16

/* USB_EHCI :: PORTSC_1 :: PORT_INDICATOR_CONTROL [15:14] */
#define BCHP_USB_EHCI_PORTSC_1_PORT_INDICATOR_CONTROL_MASK         0x0000c000
#define BCHP_USB_EHCI_PORTSC_1_PORT_INDICATOR_CONTROL_SHIFT        14

/* USB_EHCI :: PORTSC_1 :: PORT_OWNER [13:13] */
#define BCHP_USB_EHCI_PORTSC_1_PORT_OWNER_MASK                     0x00002000
#define BCHP_USB_EHCI_PORTSC_1_PORT_OWNER_SHIFT                    13

/* USB_EHCI :: PORTSC_1 :: PP [12:12] */
#define BCHP_USB_EHCI_PORTSC_1_PP_MASK                             0x00001000
#define BCHP_USB_EHCI_PORTSC_1_PP_SHIFT                            12

/* USB_EHCI :: PORTSC_1 :: LINE_STATUS [11:10] */
#define BCHP_USB_EHCI_PORTSC_1_LINE_STATUS_MASK                    0x00000c00
#define BCHP_USB_EHCI_PORTSC_1_LINE_STATUS_SHIFT                   10

/* USB_EHCI :: PORTSC_1 :: reserved1 [09:09] */
#define BCHP_USB_EHCI_PORTSC_1_reserved1_MASK                      0x00000200
#define BCHP_USB_EHCI_PORTSC_1_reserved1_SHIFT                     9

/* USB_EHCI :: PORTSC_1 :: PORT_RESET [08:08] */
#define BCHP_USB_EHCI_PORTSC_1_PORT_RESET_MASK                     0x00000100
#define BCHP_USB_EHCI_PORTSC_1_PORT_RESET_SHIFT                    8

/* USB_EHCI :: PORTSC_1 :: SUSPEND [07:07] */
#define BCHP_USB_EHCI_PORTSC_1_SUSPEND_MASK                        0x00000080
#define BCHP_USB_EHCI_PORTSC_1_SUSPEND_SHIFT                       7

/* USB_EHCI :: PORTSC_1 :: FORCE_PORT_RESUME [06:06] */
#define BCHP_USB_EHCI_PORTSC_1_FORCE_PORT_RESUME_MASK              0x00000040
#define BCHP_USB_EHCI_PORTSC_1_FORCE_PORT_RESUME_SHIFT             6

/* USB_EHCI :: PORTSC_1 :: OVER_CURRENT_CHANGE [05:05] */
#define BCHP_USB_EHCI_PORTSC_1_OVER_CURRENT_CHANGE_MASK            0x00000020
#define BCHP_USB_EHCI_PORTSC_1_OVER_CURRENT_CHANGE_SHIFT           5

/* USB_EHCI :: PORTSC_1 :: OVER_CURRENT_ACTIVE [04:04] */
#define BCHP_USB_EHCI_PORTSC_1_OVER_CURRENT_ACTIVE_MASK            0x00000010
#define BCHP_USB_EHCI_PORTSC_1_OVER_CURRENT_ACTIVE_SHIFT           4

/* USB_EHCI :: PORTSC_1 :: PORT_ENABLE_DISABLE_CHANGE [03:03] */
#define BCHP_USB_EHCI_PORTSC_1_PORT_ENABLE_DISABLE_CHANGE_MASK     0x00000008
#define BCHP_USB_EHCI_PORTSC_1_PORT_ENABLE_DISABLE_CHANGE_SHIFT    3

/* USB_EHCI :: PORTSC_1 :: PORT_ENABLED_DISABLED [02:02] */
#define BCHP_USB_EHCI_PORTSC_1_PORT_ENABLED_DISABLED_MASK          0x00000004
#define BCHP_USB_EHCI_PORTSC_1_PORT_ENABLED_DISABLED_SHIFT         2

/* USB_EHCI :: PORTSC_1 :: CONNECT_STATUS_CHANGE [01:01] */
#define BCHP_USB_EHCI_PORTSC_1_CONNECT_STATUS_CHANGE_MASK          0x00000002
#define BCHP_USB_EHCI_PORTSC_1_CONNECT_STATUS_CHANGE_SHIFT         1

/* USB_EHCI :: PORTSC_1 :: CURRENT_CONNECT_STATUS [00:00] */
#define BCHP_USB_EHCI_PORTSC_1_CURRENT_CONNECT_STATUS_MASK         0x00000001
#define BCHP_USB_EHCI_PORTSC_1_CURRENT_CONNECT_STATUS_SHIFT        0

/***************************************************************************
 *INSNREG00 - Microframe Base Value Register
 ***************************************************************************/
/* USB_EHCI :: INSNREG00 :: INSNREG00 [31:00] */
#define BCHP_USB_EHCI_INSNREG00_INSNREG00_MASK                     0xffffffff
#define BCHP_USB_EHCI_INSNREG00_INSNREG00_SHIFT                    0

/***************************************************************************
 *INSNREG01 - Packet Buffer OUT/IN Threshold Register
 ***************************************************************************/
/* USB_EHCI :: INSNREG01 :: INSNREG01 [31:00] */
#define BCHP_USB_EHCI_INSNREG01_INSNREG01_MASK                     0xffffffff
#define BCHP_USB_EHCI_INSNREG01_INSNREG01_SHIFT                    0

/***************************************************************************
 *INSNREG02 - Packet Buffer Depth Register
 ***************************************************************************/
/* USB_EHCI :: INSNREG02 :: INSNREG02 [31:00] */
#define BCHP_USB_EHCI_INSNREG02_INSNREG02_MASK                     0xffffffff
#define BCHP_USB_EHCI_INSNREG02_INSNREG02_SHIFT                    0

/***************************************************************************
 *INSNREG03 - Break Memory Transfer Register
 ***************************************************************************/
/* USB_EHCI :: INSNREG03 :: INSNREG03 [31:00] */
#define BCHP_USB_EHCI_INSNREG03_INSNREG03_MASK                     0xffffffff
#define BCHP_USB_EHCI_INSNREG03_INSNREG03_SHIFT                    0

/***************************************************************************
 *INSNREG04 - Debug Register
 ***************************************************************************/
/* USB_EHCI :: INSNREG04 :: INSNREG04 [31:00] */
#define BCHP_USB_EHCI_INSNREG04_INSNREG04_MASK                     0xffffffff
#define BCHP_USB_EHCI_INSNREG04_INSNREG04_SHIFT                    0

/***************************************************************************
 *INSNREG05 - UTMI Control and Status Register
 ***************************************************************************/
/* USB_EHCI :: INSNREG05 :: INSNREG05 [31:00] */
#define BCHP_USB_EHCI_INSNREG05_INSNREG05_MASK                     0xffffffff
#define BCHP_USB_EHCI_INSNREG05_INSNREG05_SHIFT                    0

#endif /* #ifndef BCHP_USB_EHCI_H__ */

/* End of File */
