/***************************************************************************
 *     Copyright (c) 1999-2012, 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 Sep 14 03:13:31 2012
 *                 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_GIO_H__
#define BCHP_GIO_H__

/***************************************************************************
 *GIO - GPIO
 ***************************************************************************/
#define BCHP_GIO_ODEN_LO                         0x00406500 /* GENERAL PURPOSE I/O OPEN DRAIN ENABLE [31:0] */
#define BCHP_GIO_DATA_LO                         0x00406504 /* GENERAL PURPOSE I/O DATA [31:0] */
#define BCHP_GIO_IODIR_LO                        0x00406508 /* GENERAL PURPOSE I/O DIRECTION [31:0] */
#define BCHP_GIO_EC_LO                           0x0040650c /* GENERAL PURPOSE I/O EDGE CONFIGURATION [31:0] */
#define BCHP_GIO_EI_LO                           0x00406510 /* GENERAL PURPOSE I/O EDGE INSENSITIVE [31:0] */
#define BCHP_GIO_MASK_LO                         0x00406514 /* GENERAL PURPOSE I/O INTERRUPT MASK [31:0] */
#define BCHP_GIO_LEVEL_LO                        0x00406518 /* GENERAL PURPOSE I/O INTERRUPT TYPE [31:0] */
#define BCHP_GIO_STAT_LO                         0x0040651c /* GENERAL PURPOSE I/O INTERRUPT STATUS [31:0] */
#define BCHP_GIO_ODEN_HI                         0x00406520 /* GENERAL PURPOSE I/O OPEN DRAIN ENABLE [63:32] */
#define BCHP_GIO_DATA_HI                         0x00406524 /* GENERAL PURPOSE I/O DATA [63:32] */
#define BCHP_GIO_IODIR_HI                        0x00406528 /* GENERAL PURPOSE I/O DIRECTION [63:32] */
#define BCHP_GIO_EC_HI                           0x0040652c /* GENERAL PURPOSE I/O EDGE CONFIGURATION [63:32] */
#define BCHP_GIO_EI_HI                           0x00406530 /* GENERAL PURPOSE I/O EDGE INSENSITIVE [63:32] */
#define BCHP_GIO_MASK_HI                         0x00406534 /* GENERAL PURPOSE I/O INTERRUPT MASK [63:32] */
#define BCHP_GIO_LEVEL_HI                        0x00406538 /* GENERAL PURPOSE I/O INTERRUPT TYPE [63:32] */
#define BCHP_GIO_STAT_HI                         0x0040653c /* GENERAL PURPOSE I/O INTERRUPT STATUS [63:32] */
#define BCHP_GIO_ODEN_EXT                        0x00406540 /* GENERAL PURPOSE I/O OPEN DRAIN ENABLE [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_DATA_EXT                        0x00406544 /* GENERAL PURPOSE I/O DATA [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_IODIR_EXT                       0x00406548 /* GENERAL PURPOSE I/O DIRECTION [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_EC_EXT                          0x0040654c /* GENERAL PURPOSE I/O EDGE CONFIGURATION [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_EI_EXT                          0x00406550 /* GENERAL PURPOSE I/O EDGE INSENSITIVE [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_MASK_EXT                        0x00406554 /* GENERAL PURPOSE I/O INTERRUPT MASK [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_LEVEL_EXT                       0x00406558 /* GENERAL PURPOSE I/O INTERRUPT TYPE [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_STAT_EXT                        0x0040655c /* GENERAL PURPOSE I/O INTERRUPT STATUS [95:64] (GPIO[91:64], SGPIO[3:0]) */
#define BCHP_GIO_ODEN_EXT_HI                     0x00406560 /* GENERAL PURPOSE I/O OPEN DRAIN ENABLE [127:96] (GPIO[123:92]) */
#define BCHP_GIO_DATA_EXT_HI                     0x00406564 /* GENERAL PURPOSE I/O DATA [127:96] (GPIO[123:92]) */
#define BCHP_GIO_IODIR_EXT_HI                    0x00406568 /* GENERAL PURPOSE I/O DIRECTION [127:96] (GPIO[123:92]) */
#define BCHP_GIO_EC_EXT_HI                       0x0040656c /* GENERAL PURPOSE I/O EDGE CONFIGURATION [127:96] (GPIO[123:92]) */
#define BCHP_GIO_EI_EXT_HI                       0x00406570 /* GENERAL PURPOSE I/O EDGE INSENSITIVE [127:96] (GPIO[123:92]) */
#define BCHP_GIO_MASK_EXT_HI                     0x00406574 /* GENERAL PURPOSE I/O INTERRUPT MASK [127:96] (GPIO[123:92]) */
#define BCHP_GIO_LEVEL_EXT_HI                    0x00406578 /* GENERAL PURPOSE I/O INTERRUPT TYPE [127:96] (GPIO[123:92]) */
#define BCHP_GIO_STAT_EXT_HI                     0x0040657c /* GENERAL PURPOSE I/O INTERRUPT STATUS [127:96] (GPIO[123:92]) */
#define BCHP_GIO_ODEN_EXT2                       0x00406580 /* GENERAL PURPOSE I/O OPEN DRAIN ENABLE [153:128] (GPIO[149:124]) */
#define BCHP_GIO_DATA_EXT2                       0x00406584 /* GENERAL PURPOSE I/O DATA [153:128] (GPIO[149:124]) */
#define BCHP_GIO_IODIR_EXT2                      0x00406588 /* GENERAL PURPOSE I/O DIRECTION [153:128] (GPIO[149:124]) */
#define BCHP_GIO_EC_EXT2                         0x0040658c /* GENERAL PURPOSE I/O EDGE CONFIGURATION [153:128] (GPIO[149:124]) */
#define BCHP_GIO_EI_EXT2                         0x00406590 /* GENERAL PURPOSE I/O EDGE INSENSITIVE [153:128] (GPIO[149:124]) */
#define BCHP_GIO_MASK_EXT2                       0x00406594 /* GENERAL PURPOSE I/O INTERRUPT MASK [153:128] (GPIO[149:124]) */
#define BCHP_GIO_LEVEL_EXT2                      0x00406598 /* GENERAL PURPOSE I/O INTERRUPT TYPE [153:128] (GPIO[149:124]) */
#define BCHP_GIO_STAT_EXT2                       0x0040659c /* GENERAL PURPOSE I/O INTERRUPT STATUS [153:128] (GPIO[149:124]) */

/***************************************************************************
 *ODEN_LO - GENERAL PURPOSE I/O OPEN DRAIN ENABLE [31:0]
 ***************************************************************************/
/* GIO :: ODEN_LO :: oden [31:00] */
#define BCHP_GIO_ODEN_LO_oden_MASK                                 0xffffffff
#define BCHP_GIO_ODEN_LO_oden_SHIFT                                0
#define BCHP_GIO_ODEN_LO_oden_DEFAULT                              0x00000000

/***************************************************************************
 *DATA_LO - GENERAL PURPOSE I/O DATA [31:0]
 ***************************************************************************/
/* GIO :: DATA_LO :: data [31:00] */
#define BCHP_GIO_DATA_LO_data_MASK                                 0xffffffff
#define BCHP_GIO_DATA_LO_data_SHIFT                                0
#define BCHP_GIO_DATA_LO_data_DEFAULT                              0x00000000

/***************************************************************************
 *IODIR_LO - GENERAL PURPOSE I/O DIRECTION [31:0]
 ***************************************************************************/
/* GIO :: IODIR_LO :: iodir [31:00] */
#define BCHP_GIO_IODIR_LO_iodir_MASK                               0xffffffff
#define BCHP_GIO_IODIR_LO_iodir_SHIFT                              0
#define BCHP_GIO_IODIR_LO_iodir_DEFAULT                            0xffffffff

/***************************************************************************
 *EC_LO - GENERAL PURPOSE I/O EDGE CONFIGURATION [31:0]
 ***************************************************************************/
/* GIO :: EC_LO :: edge_config [31:00] */
#define BCHP_GIO_EC_LO_edge_config_MASK                            0xffffffff
#define BCHP_GIO_EC_LO_edge_config_SHIFT                           0
#define BCHP_GIO_EC_LO_edge_config_DEFAULT                         0x00000000

/***************************************************************************
 *EI_LO - GENERAL PURPOSE I/O EDGE INSENSITIVE [31:0]
 ***************************************************************************/
/* GIO :: EI_LO :: edge_insensitive [31:00] */
#define BCHP_GIO_EI_LO_edge_insensitive_MASK                       0xffffffff
#define BCHP_GIO_EI_LO_edge_insensitive_SHIFT                      0
#define BCHP_GIO_EI_LO_edge_insensitive_DEFAULT                    0x00000000

/***************************************************************************
 *MASK_LO - GENERAL PURPOSE I/O INTERRUPT MASK [31:0]
 ***************************************************************************/
/* GIO :: MASK_LO :: irq_mask [31:00] */
#define BCHP_GIO_MASK_LO_irq_mask_MASK                             0xffffffff
#define BCHP_GIO_MASK_LO_irq_mask_SHIFT                            0
#define BCHP_GIO_MASK_LO_irq_mask_DEFAULT                          0x00000000

/***************************************************************************
 *LEVEL_LO - GENERAL PURPOSE I/O INTERRUPT TYPE [31:0]
 ***************************************************************************/
/* GIO :: LEVEL_LO :: level [31:00] */
#define BCHP_GIO_LEVEL_LO_level_MASK                               0xffffffff
#define BCHP_GIO_LEVEL_LO_level_SHIFT                              0
#define BCHP_GIO_LEVEL_LO_level_DEFAULT                            0x00000000

/***************************************************************************
 *STAT_LO - GENERAL PURPOSE I/O INTERRUPT STATUS [31:0]
 ***************************************************************************/
/* GIO :: STAT_LO :: irq_status [31:00] */
#define BCHP_GIO_STAT_LO_irq_status_MASK                           0xffffffff
#define BCHP_GIO_STAT_LO_irq_status_SHIFT                          0
#define BCHP_GIO_STAT_LO_irq_status_DEFAULT                        0x00000000

/***************************************************************************
 *ODEN_HI - GENERAL PURPOSE I/O OPEN DRAIN ENABLE [63:32]
 ***************************************************************************/
/* GIO :: ODEN_HI :: oden [31:00] */
#define BCHP_GIO_ODEN_HI_oden_MASK                                 0xffffffff
#define BCHP_GIO_ODEN_HI_oden_SHIFT                                0
#define BCHP_GIO_ODEN_HI_oden_DEFAULT                              0x00000000

/***************************************************************************
 *DATA_HI - GENERAL PURPOSE I/O DATA [63:32]
 ***************************************************************************/
/* GIO :: DATA_HI :: data [31:00] */
#define BCHP_GIO_DATA_HI_data_MASK                                 0xffffffff
#define BCHP_GIO_DATA_HI_data_SHIFT                                0
#define BCHP_GIO_DATA_HI_data_DEFAULT                              0x00000000

/***************************************************************************
 *IODIR_HI - GENERAL PURPOSE I/O DIRECTION [63:32]
 ***************************************************************************/
/* GIO :: IODIR_HI :: iodir [31:00] */
#define BCHP_GIO_IODIR_HI_iodir_MASK                               0xffffffff
#define BCHP_GIO_IODIR_HI_iodir_SHIFT                              0
#define BCHP_GIO_IODIR_HI_iodir_DEFAULT                            0xffffffff

/***************************************************************************
 *EC_HI - GENERAL PURPOSE I/O EDGE CONFIGURATION [63:32]
 ***************************************************************************/
/* GIO :: EC_HI :: edge_config [31:00] */
#define BCHP_GIO_EC_HI_edge_config_MASK                            0xffffffff
#define BCHP_GIO_EC_HI_edge_config_SHIFT                           0
#define BCHP_GIO_EC_HI_edge_config_DEFAULT                         0x00000000

/***************************************************************************
 *EI_HI - GENERAL PURPOSE I/O EDGE INSENSITIVE [63:32]
 ***************************************************************************/
/* GIO :: EI_HI :: edge_insensitive [31:00] */
#define BCHP_GIO_EI_HI_edge_insensitive_MASK                       0xffffffff
#define BCHP_GIO_EI_HI_edge_insensitive_SHIFT                      0
#define BCHP_GIO_EI_HI_edge_insensitive_DEFAULT                    0x00000000

/***************************************************************************
 *MASK_HI - GENERAL PURPOSE I/O INTERRUPT MASK [63:32]
 ***************************************************************************/
/* GIO :: MASK_HI :: irq_mask [31:00] */
#define BCHP_GIO_MASK_HI_irq_mask_MASK                             0xffffffff
#define BCHP_GIO_MASK_HI_irq_mask_SHIFT                            0
#define BCHP_GIO_MASK_HI_irq_mask_DEFAULT                          0x00000000

/***************************************************************************
 *LEVEL_HI - GENERAL PURPOSE I/O INTERRUPT TYPE [63:32]
 ***************************************************************************/
/* GIO :: LEVEL_HI :: level [31:00] */
#define BCHP_GIO_LEVEL_HI_level_MASK                               0xffffffff
#define BCHP_GIO_LEVEL_HI_level_SHIFT                              0
#define BCHP_GIO_LEVEL_HI_level_DEFAULT                            0x00000000

/***************************************************************************
 *STAT_HI - GENERAL PURPOSE I/O INTERRUPT STATUS [63:32]
 ***************************************************************************/
/* GIO :: STAT_HI :: irq_status [31:00] */
#define BCHP_GIO_STAT_HI_irq_status_MASK                           0xffffffff
#define BCHP_GIO_STAT_HI_irq_status_SHIFT                          0
#define BCHP_GIO_STAT_HI_irq_status_DEFAULT                        0x00000000

/***************************************************************************
 *ODEN_EXT - GENERAL PURPOSE I/O OPEN DRAIN ENABLE [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: ODEN_EXT :: oden [31:00] */
#define BCHP_GIO_ODEN_EXT_oden_MASK                                0xffffffff
#define BCHP_GIO_ODEN_EXT_oden_SHIFT                               0
#define BCHP_GIO_ODEN_EXT_oden_DEFAULT                             0x00000000

/***************************************************************************
 *DATA_EXT - GENERAL PURPOSE I/O DATA [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: DATA_EXT :: data [31:00] */
#define BCHP_GIO_DATA_EXT_data_MASK                                0xffffffff
#define BCHP_GIO_DATA_EXT_data_SHIFT                               0
#define BCHP_GIO_DATA_EXT_data_DEFAULT                             0x00000000

/***************************************************************************
 *IODIR_EXT - GENERAL PURPOSE I/O DIRECTION [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: IODIR_EXT :: iodir [31:00] */
#define BCHP_GIO_IODIR_EXT_iodir_MASK                              0xffffffff
#define BCHP_GIO_IODIR_EXT_iodir_SHIFT                             0
#define BCHP_GIO_IODIR_EXT_iodir_DEFAULT                           0xffffffff

/***************************************************************************
 *EC_EXT - GENERAL PURPOSE I/O EDGE CONFIGURATION [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: EC_EXT :: edge_config [31:00] */
#define BCHP_GIO_EC_EXT_edge_config_MASK                           0xffffffff
#define BCHP_GIO_EC_EXT_edge_config_SHIFT                          0
#define BCHP_GIO_EC_EXT_edge_config_DEFAULT                        0x00000000

/***************************************************************************
 *EI_EXT - GENERAL PURPOSE I/O EDGE INSENSITIVE [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: EI_EXT :: edge_insensitive [31:00] */
#define BCHP_GIO_EI_EXT_edge_insensitive_MASK                      0xffffffff
#define BCHP_GIO_EI_EXT_edge_insensitive_SHIFT                     0
#define BCHP_GIO_EI_EXT_edge_insensitive_DEFAULT                   0x00000000

/***************************************************************************
 *MASK_EXT - GENERAL PURPOSE I/O INTERRUPT MASK [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: MASK_EXT :: irq_mask [31:00] */
#define BCHP_GIO_MASK_EXT_irq_mask_MASK                            0xffffffff
#define BCHP_GIO_MASK_EXT_irq_mask_SHIFT                           0
#define BCHP_GIO_MASK_EXT_irq_mask_DEFAULT                         0x00000000

/***************************************************************************
 *LEVEL_EXT - GENERAL PURPOSE I/O INTERRUPT TYPE [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: LEVEL_EXT :: level [31:00] */
#define BCHP_GIO_LEVEL_EXT_level_MASK                              0xffffffff
#define BCHP_GIO_LEVEL_EXT_level_SHIFT                             0
#define BCHP_GIO_LEVEL_EXT_level_DEFAULT                           0x00000000

/***************************************************************************
 *STAT_EXT - GENERAL PURPOSE I/O INTERRUPT STATUS [95:64] (GPIO[91:64], SGPIO[3:0])
 ***************************************************************************/
/* GIO :: STAT_EXT :: irq_status [31:00] */
#define BCHP_GIO_STAT_EXT_irq_status_MASK                          0xffffffff
#define BCHP_GIO_STAT_EXT_irq_status_SHIFT                         0
#define BCHP_GIO_STAT_EXT_irq_status_DEFAULT                       0x00000000

/***************************************************************************
 *ODEN_EXT_HI - GENERAL PURPOSE I/O OPEN DRAIN ENABLE [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: ODEN_EXT_HI :: oden [31:00] */
#define BCHP_GIO_ODEN_EXT_HI_oden_MASK                             0xffffffff
#define BCHP_GIO_ODEN_EXT_HI_oden_SHIFT                            0
#define BCHP_GIO_ODEN_EXT_HI_oden_DEFAULT                          0x00000000

/***************************************************************************
 *DATA_EXT_HI - GENERAL PURPOSE I/O DATA [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: DATA_EXT_HI :: data [31:00] */
#define BCHP_GIO_DATA_EXT_HI_data_MASK                             0xffffffff
#define BCHP_GIO_DATA_EXT_HI_data_SHIFT                            0
#define BCHP_GIO_DATA_EXT_HI_data_DEFAULT                          0x00000000

/***************************************************************************
 *IODIR_EXT_HI - GENERAL PURPOSE I/O DIRECTION [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: IODIR_EXT_HI :: iodir [31:00] */
#define BCHP_GIO_IODIR_EXT_HI_iodir_MASK                           0xffffffff
#define BCHP_GIO_IODIR_EXT_HI_iodir_SHIFT                          0
#define BCHP_GIO_IODIR_EXT_HI_iodir_DEFAULT                        0xffffffff

/***************************************************************************
 *EC_EXT_HI - GENERAL PURPOSE I/O EDGE CONFIGURATION [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: EC_EXT_HI :: edge_config [31:00] */
#define BCHP_GIO_EC_EXT_HI_edge_config_MASK                        0xffffffff
#define BCHP_GIO_EC_EXT_HI_edge_config_SHIFT                       0
#define BCHP_GIO_EC_EXT_HI_edge_config_DEFAULT                     0x00000000

/***************************************************************************
 *EI_EXT_HI - GENERAL PURPOSE I/O EDGE INSENSITIVE [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: EI_EXT_HI :: edge_insensitive [31:00] */
#define BCHP_GIO_EI_EXT_HI_edge_insensitive_MASK                   0xffffffff
#define BCHP_GIO_EI_EXT_HI_edge_insensitive_SHIFT                  0
#define BCHP_GIO_EI_EXT_HI_edge_insensitive_DEFAULT                0x00000000

/***************************************************************************
 *MASK_EXT_HI - GENERAL PURPOSE I/O INTERRUPT MASK [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: MASK_EXT_HI :: irq_mask [31:00] */
#define BCHP_GIO_MASK_EXT_HI_irq_mask_MASK                         0xffffffff
#define BCHP_GIO_MASK_EXT_HI_irq_mask_SHIFT                        0
#define BCHP_GIO_MASK_EXT_HI_irq_mask_DEFAULT                      0x00000000

/***************************************************************************
 *LEVEL_EXT_HI - GENERAL PURPOSE I/O INTERRUPT TYPE [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: LEVEL_EXT_HI :: level [31:00] */
#define BCHP_GIO_LEVEL_EXT_HI_level_MASK                           0xffffffff
#define BCHP_GIO_LEVEL_EXT_HI_level_SHIFT                          0
#define BCHP_GIO_LEVEL_EXT_HI_level_DEFAULT                        0x00000000

/***************************************************************************
 *STAT_EXT_HI - GENERAL PURPOSE I/O INTERRUPT STATUS [127:96] (GPIO[123:92])
 ***************************************************************************/
/* GIO :: STAT_EXT_HI :: irq_status [31:00] */
#define BCHP_GIO_STAT_EXT_HI_irq_status_MASK                       0xffffffff
#define BCHP_GIO_STAT_EXT_HI_irq_status_SHIFT                      0
#define BCHP_GIO_STAT_EXT_HI_irq_status_DEFAULT                    0x00000000

/***************************************************************************
 *ODEN_EXT2 - GENERAL PURPOSE I/O OPEN DRAIN ENABLE [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: ODEN_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_ODEN_EXT2_reserved0_MASK                          0xfc000000
#define BCHP_GIO_ODEN_EXT2_reserved0_SHIFT                         26

/* GIO :: ODEN_EXT2 :: oden [25:00] */
#define BCHP_GIO_ODEN_EXT2_oden_MASK                               0x03ffffff
#define BCHP_GIO_ODEN_EXT2_oden_SHIFT                              0
#define BCHP_GIO_ODEN_EXT2_oden_DEFAULT                            0x00000000

/***************************************************************************
 *DATA_EXT2 - GENERAL PURPOSE I/O DATA [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: DATA_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_DATA_EXT2_reserved0_MASK                          0xfc000000
#define BCHP_GIO_DATA_EXT2_reserved0_SHIFT                         26

/* GIO :: DATA_EXT2 :: data [25:00] */
#define BCHP_GIO_DATA_EXT2_data_MASK                               0x03ffffff
#define BCHP_GIO_DATA_EXT2_data_SHIFT                              0
#define BCHP_GIO_DATA_EXT2_data_DEFAULT                            0x00000000

/***************************************************************************
 *IODIR_EXT2 - GENERAL PURPOSE I/O DIRECTION [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: IODIR_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_IODIR_EXT2_reserved0_MASK                         0xfc000000
#define BCHP_GIO_IODIR_EXT2_reserved0_SHIFT                        26

/* GIO :: IODIR_EXT2 :: iodir [25:00] */
#define BCHP_GIO_IODIR_EXT2_iodir_MASK                             0x03ffffff
#define BCHP_GIO_IODIR_EXT2_iodir_SHIFT                            0
#define BCHP_GIO_IODIR_EXT2_iodir_DEFAULT                          0x03ffffff

/***************************************************************************
 *EC_EXT2 - GENERAL PURPOSE I/O EDGE CONFIGURATION [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: EC_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_EC_EXT2_reserved0_MASK                            0xfc000000
#define BCHP_GIO_EC_EXT2_reserved0_SHIFT                           26

/* GIO :: EC_EXT2 :: edge_config [25:00] */
#define BCHP_GIO_EC_EXT2_edge_config_MASK                          0x03ffffff
#define BCHP_GIO_EC_EXT2_edge_config_SHIFT                         0
#define BCHP_GIO_EC_EXT2_edge_config_DEFAULT                       0x00000000

/***************************************************************************
 *EI_EXT2 - GENERAL PURPOSE I/O EDGE INSENSITIVE [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: EI_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_EI_EXT2_reserved0_MASK                            0xfc000000
#define BCHP_GIO_EI_EXT2_reserved0_SHIFT                           26

/* GIO :: EI_EXT2 :: edge_insensitive [25:00] */
#define BCHP_GIO_EI_EXT2_edge_insensitive_MASK                     0x03ffffff
#define BCHP_GIO_EI_EXT2_edge_insensitive_SHIFT                    0
#define BCHP_GIO_EI_EXT2_edge_insensitive_DEFAULT                  0x00000000

/***************************************************************************
 *MASK_EXT2 - GENERAL PURPOSE I/O INTERRUPT MASK [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: MASK_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_MASK_EXT2_reserved0_MASK                          0xfc000000
#define BCHP_GIO_MASK_EXT2_reserved0_SHIFT                         26

/* GIO :: MASK_EXT2 :: irq_mask [25:00] */
#define BCHP_GIO_MASK_EXT2_irq_mask_MASK                           0x03ffffff
#define BCHP_GIO_MASK_EXT2_irq_mask_SHIFT                          0
#define BCHP_GIO_MASK_EXT2_irq_mask_DEFAULT                        0x00000000

/***************************************************************************
 *LEVEL_EXT2 - GENERAL PURPOSE I/O INTERRUPT TYPE [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: LEVEL_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_LEVEL_EXT2_reserved0_MASK                         0xfc000000
#define BCHP_GIO_LEVEL_EXT2_reserved0_SHIFT                        26

/* GIO :: LEVEL_EXT2 :: level [25:00] */
#define BCHP_GIO_LEVEL_EXT2_level_MASK                             0x03ffffff
#define BCHP_GIO_LEVEL_EXT2_level_SHIFT                            0
#define BCHP_GIO_LEVEL_EXT2_level_DEFAULT                          0x00000000

/***************************************************************************
 *STAT_EXT2 - GENERAL PURPOSE I/O INTERRUPT STATUS [153:128] (GPIO[149:124])
 ***************************************************************************/
/* GIO :: STAT_EXT2 :: reserved0 [31:26] */
#define BCHP_GIO_STAT_EXT2_reserved0_MASK                          0xfc000000
#define BCHP_GIO_STAT_EXT2_reserved0_SHIFT                         26

/* GIO :: STAT_EXT2 :: irq_status [25:00] */
#define BCHP_GIO_STAT_EXT2_irq_status_MASK                         0x03ffffff
#define BCHP_GIO_STAT_EXT2_irq_status_SHIFT                        0
#define BCHP_GIO_STAT_EXT2_irq_status_DEFAULT                      0x00000000

#endif /* #ifndef BCHP_GIO_H__ */

/* End of File */
