/***************************************************************************
 *     Copyright (c) 1999-2014, 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              Thu Sep  4 03:29:01 2014
 *                 Full Compile MD5 Checksum 1782df3043f929698a3869b835cd123a
 *                   (minus title and desc)  
 *                 MD5 Checksum              6296cc47ae2b74764e7827f243438799
 *
 * 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_CLKGEN_H__
#define BCHP_CLKGEN_H__

/***************************************************************************
 *CLKGEN - clkgen registers
 ***************************************************************************/
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0 0x004e0000 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1 0x004e0004 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2 0x004e0008 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3 0x004e000c /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4 0x004e0010 /* PLL CHANNEL control CH 4 */
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV              0x004e0014 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN             0x004e0018 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_AVX_PLL_LDO_PWRON        0x004e001c /* LDO Power on */
#define BCHP_CLKGEN_PLL_AVX_PLL_LOCK_STATUS      0x004e0020 /* Lock Status */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC             0x004e0024 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC2            0x004e0028 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_AVX_PLL_PWRON            0x004e002c /* Poweron */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET            0x004e0030 /* Resets */
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH 0x004e0034 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW 0x004e0038 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_AVX_PLL_STATUS           0x004e003c /* Status */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0 0x004e0040 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1 0x004e0044 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2 0x004e0048 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3 0x004e004c /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4 0x004e0050 /* PLL CHANNEL control CH 4 */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5 0x004e0054 /* PLL CHANNEL control CH 5 */
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV              0x004e0058 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_CPU_PLL_FRAC             0x004e005c /* Fractional */
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN             0x004e0060 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_CPU_PLL_LDO_PWRON        0x004e0064 /* LDO Power on */
#define BCHP_CLKGEN_PLL_CPU_PLL_LOCK_STATUS      0x004e0068 /* Lock Status */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC             0x004e006c /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC2            0x004e0070 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_CPU_PLL_PWRON            0x004e0074 /* Poweron */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET            0x004e0078 /* Resets */
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH 0x004e007c /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW 0x004e0080 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_CPU_PLL_STATUS           0x004e0084 /* Status */
#define BCHP_CLKGEN_PLL_DTT_PLL_BG_PWRON         0x004e0088 /* Bandgap Power on */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0 0x004e008c /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1 0x004e0090 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2 0x004e0094 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3 0x004e0098 /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV              0x004e009c /* Pre multiplier */
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN             0x004e00a0 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_DTT_PLL_HOLD_CH_ALL      0x004e00a4 /* Hold PLL all channels */
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_CTRL         0x004e00a8 /* Ldo voltage control */
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_PWRON        0x004e00ac /* LDO Power on */
#define BCHP_CLKGEN_PLL_DTT_PLL_LOCK_STATUS      0x004e00b0 /* Lock Status */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC             0x004e00b4 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC2            0x004e00b8 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_DTT_PLL_PWRON            0x004e00bc /* Poweron */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET            0x004e00c0 /* Resets */
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH 0x004e00c4 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW 0x004e00c8 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_DTT_PLL_STATUS           0x004e00cc /* Status */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0 0x004e00d0 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1 0x004e00d4 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2 0x004e00d8 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3 0x004e00dc /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4 0x004e00e0 /* PLL CHANNEL control CH 4 */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5 0x004e00e4 /* PLL CHANNEL control CH 5 */
#define BCHP_CLKGEN_PLL_LC_PLL_CONTROL           0x004e00e8 /* Miscellaneous Controls */
#define BCHP_CLKGEN_PLL_LC_PLL_DIV               0x004e00ec /* Pre multiplier */
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN              0x004e00f0 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_LC_PLL_HOLD_CH_ALL       0x004e00f4 /* Hold PLL all channels */
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_CTRL          0x004e00f8 /* Ldo voltage control */
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_PWRON         0x004e00fc /* LDO Power on */
#define BCHP_CLKGEN_PLL_LC_PLL_LOCK_STATUS       0x004e0100 /* Lock Status */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC              0x004e0104 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2             0x004e0108 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_LC_PLL_OUTSEL_SEL        0x004e010c /* selection of the output clock from the PLL core */
#define BCHP_CLKGEN_PLL_LC_PLL_PWRON             0x004e0110 /* Poweron */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET             0x004e0114 /* Resets */
#define BCHP_CLKGEN_PLL_LC_PLL_STATUS            0x004e0118 /* Status */
#define BCHP_CLKGEN_PLL_LC_PLL_TEST              0x004e011c /* enable and selection pf PLL test */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0 0x004e0120 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1 0x004e0124 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2 0x004e0128 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3 0x004e012c /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV             0x004e0130 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN            0x004e0134 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_MOCA_PLL_LDO_PWRON       0x004e0138 /* LDO Power on */
#define BCHP_CLKGEN_PLL_MOCA_PLL_LOCK_STATUS     0x004e013c /* Lock Status */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC            0x004e0140 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC2           0x004e0144 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_MOCA_PLL_PWRON           0x004e0148 /* Poweron */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET           0x004e014c /* Resets */
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH 0x004e0150 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW 0x004e0154 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_MOCA_PLL_STATUS          0x004e0158 /* Status */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0 0x004e015c /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1 0x004e0160 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2 0x004e0164 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3 0x004e0168 /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4 0x004e016c /* PLL CHANNEL control CH 4 */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV          0x004e0170 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN         0x004e0174 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LDO_PWRON    0x004e0178 /* LDO Power on */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LOCK_STATUS  0x004e017c /* Lock Status */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC         0x004e0180 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC2        0x004e0184 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_PWRON        0x004e0188 /* Poweron */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET        0x004e018c /* Resets */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH 0x004e0190 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW 0x004e0194 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_STATUS       0x004e0198 /* Status */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0 0x004e019c /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1 0x004e01a0 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2 0x004e01a4 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3 0x004e01a8 /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4 0x004e01ac /* PLL CHANNEL control CH 4 */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV            0x004e01b0 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN           0x004e01b4 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LDO_PWRON      0x004e01b8 /* LDO Power on */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LOCK_STATUS    0x004e01bc /* Lock Status */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC           0x004e01c0 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC2          0x004e01c4 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_PWRON          0x004e01c8 /* Poweron */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET          0x004e01cc /* Resets */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH 0x004e01d0 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW 0x004e01d4 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_STATUS         0x004e01d8 /* Status */
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0 0x004e01dc /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV              0x004e01e0 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_SC0_PLL_FRAC             0x004e01e4 /* Fractional */
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN             0x004e01e8 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_SC0_PLL_LDO_PWRON        0x004e01ec /* LDO Power on */
#define BCHP_CLKGEN_PLL_SC0_PLL_LOCK_STATUS      0x004e01f0 /* Lock Status */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC             0x004e01f4 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC2            0x004e01f8 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_SC0_PLL_PWRON            0x004e01fc /* Poweron */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET            0x004e0200 /* Resets */
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH 0x004e0204 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW 0x004e0208 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SC0_PLL_STATUS           0x004e020c /* Status */
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0 0x004e0210 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV              0x004e0214 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_SC1_PLL_FRAC             0x004e0218 /* Fractional */
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN             0x004e021c /* PLL GAIN */
#define BCHP_CLKGEN_PLL_SC1_PLL_LDO_PWRON        0x004e0220 /* LDO Power on */
#define BCHP_CLKGEN_PLL_SC1_PLL_LOCK_STATUS      0x004e0224 /* Lock Status */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC             0x004e0228 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC2            0x004e022c /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_SC1_PLL_PWRON            0x004e0230 /* Poweron */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET            0x004e0234 /* Resets */
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH 0x004e0238 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW 0x004e023c /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SC1_PLL_STATUS           0x004e0240 /* Status */
#define BCHP_CLKGEN_PLL_SYS0_PLL_BG_PWRON        0x004e0244 /* Bandgap Power on */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0 0x004e0248 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1 0x004e024c /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2 0x004e0250 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3 0x004e0254 /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4 0x004e0258 /* PLL CHANNEL control CH 4 */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5 0x004e025c /* PLL CHANNEL control CH 5 */
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV             0x004e0260 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN            0x004e0264 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_SYS0_PLL_HOLD_CH_ALL     0x004e0268 /* Hold PLL all channels */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_CTRL        0x004e026c /* Ldo voltage control */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_PWRON       0x004e0270 /* LDO Power on */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LOCK_STATUS     0x004e0274 /* Lock Status */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC            0x004e0278 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC2           0x004e027c /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_SYS0_PLL_PWRON           0x004e0280 /* Poweron */
#define BCHP_CLKGEN_PLL_SYS0_PLL_RESET           0x004e0284 /* Resets */
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH 0x004e0288 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW 0x004e028c /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SYS0_PLL_STATUS          0x004e0290 /* Status */
#define BCHP_CLKGEN_PLL_SYS1_PLL_BG_PWRON        0x004e0294 /* Bandgap Power on */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0 0x004e0298 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1 0x004e029c /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2 0x004e02a0 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3 0x004e02a4 /* PLL CHANNEL control CH 3 */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4 0x004e02a8 /* PLL CHANNEL control CH 4 */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5 0x004e02ac /* PLL CHANNEL control CH 5 */
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV             0x004e02b0 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN            0x004e02b4 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_SYS1_PLL_HOLD_CH_ALL     0x004e02b8 /* Hold PLL all channels */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_CTRL        0x004e02bc /* Ldo voltage control */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_PWRON       0x004e02c0 /* LDO Power on */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LOCK_STATUS     0x004e02c4 /* Lock Status */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC            0x004e02c8 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC2           0x004e02cc /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_SYS1_PLL_PWRON           0x004e02d0 /* Poweron */
#define BCHP_CLKGEN_PLL_SYS1_PLL_RESET           0x004e02d4 /* Resets */
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH 0x004e02d8 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW 0x004e02dc /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_SYS1_PLL_STATUS          0x004e02e0 /* Status */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_BG_PWRON       0x004e02e4 /* Bandgap Power on */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0 0x004e02e8 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1 0x004e02ec /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2 0x004e02f0 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV            0x004e02f4 /* Pre multiplier */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_FRAC           0x004e02f8 /* Fractional */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN           0x004e02fc /* PLL GAIN */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_HOLD_CH_ALL    0x004e0300 /* Hold PLL all channels */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_CTRL       0x004e0304 /* Ldo voltage control */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_PWRON      0x004e0308 /* LDO Power on */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LOCK_STATUS    0x004e030c /* Lock Status */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC           0x004e0310 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC2          0x004e0314 /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_PWRON          0x004e0318 /* Poweron */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET          0x004e031c /* Resets */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH 0x004e0320 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW 0x004e0324 /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_STATUS         0x004e0328 /* Status */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_BG_PWRON       0x004e032c /* Bandgap Power on */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0 0x004e0330 /* PLL CHANNEL control CH 0 */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1 0x004e0334 /* PLL CHANNEL control CH 1 */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2 0x004e0338 /* PLL CHANNEL control CH 2 */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV            0x004e033c /* Pre multiplier */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_FRAC           0x004e0340 /* Fractional */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN           0x004e0344 /* PLL GAIN */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_HOLD_CH_ALL    0x004e0348 /* Hold PLL all channels */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_CTRL       0x004e034c /* Ldo voltage control */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_PWRON      0x004e0350 /* LDO Power on */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LOCK_STATUS    0x004e0354 /* Lock Status */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC           0x004e0358 /* Mscellaneous control bus. */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC2          0x004e035c /* Mscellaneous control bus continued. */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_PWRON          0x004e0360 /* Poweron */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET          0x004e0364 /* Resets */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH 0x004e0368 /* Higher bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW 0x004e036c /* Lower bits of Spread Spectrum mode control */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_STATUS         0x004e0370 /* Status */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE 0x004e0374 /* Aon mpm top inst clock enable */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS 0x004e0378 /* Clock Enable Status */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK 0x004e037c /* Aon mpm top inst observe clock */
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT            0x004e0380 /* Mux selects for BSPI_CLOCK clocks */
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE         0x004e0384 /* Disable CLKGEN's clocks */
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_STATUS  0x004e0388 /* Clock Disable Status */
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL        0x004e038c /* Clock Monitor Control */
#define BCHP_CLKGEN_CLOCK_MONITOR_MAX_COUNT      0x004e0390 /* Clock Monitor Max Reference Count */
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_COUNTER    0x004e0394 /* Clock Monitor Reference Counter */
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_DONE       0x004e0398 /* Clock Monitor Reference Counter */
#define BCHP_CLKGEN_CLOCK_MONITOR_VIEW_COUNTER   0x004e039c /* Clock Monitor View Counter */
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2    0x004e03a0 /* Disable AVS_TOP 54MHz clocks during S2 standby. */
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_SECURE 0x004e03a4 /* Secure AVS_TOP clock disable. Set at start-up to guarantee AVS_TOP is clock gated in S2 standby. */
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT          0x004e03a8 /* Mux selects for Internal clocks */
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT          0x004e03ac /* Mux selects for itu656_0 clocks */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE 0x004e03b0 /* Onoff aif mdac cal top inst enable */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK 0x004e03b4 /* Onoff aif mdac cal top inst observe clock */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_SEL 0x004e03b8 /* Onoff aif mdac cal top inst sel */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE 0x004e03bc /* Onoff aif wb sat top inst clock enable */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS 0x004e03c0 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_ENABLE 0x004e03c4 /* Onoff aif wb sat top inst enable */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK 0x004e03c8 /* Onoff aif wb sat top inst observe clock */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_SEL 0x004e03cc /* Onoff aif wb sat top inst sel */
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL 0x004e03d0 /* Onoff ana pll4 1p8v ts28hpm 6mx 2mr fc x e pllaudio0 inst sel */
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL 0x004e03d4 /* Onoff ana pll4 rfmod 1p8v ts28hpm 6mx 2mr np x e pllaudio1 inst sel */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE 0x004e03d8 /* Onoff bvn top inst clock enable */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS 0x004e03dc /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE 0x004e03e0 /* Onoff core xpt inst clock enable */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS 0x004e03e4 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK 0x004e03e8 /* Onoff core xpt inst observe clock */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_CONTROL 0x004e03ec /* Onoff dfe core inst clock control */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE 0x004e03f0 /* Onoff dfe core inst clock divider enable */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE 0x004e03f4 /* Onoff dfe core inst clock enable */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS 0x004e03f8 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE 0x004e03fc /* Onoff ds topa inst clock enable */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS 0x004e0400 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE 0x004e0404 /* Onoff ds topa inst observe clock enable */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240       0x004e0408 /* Onoff dualsds inst 240 */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE 0x004e040c /* Disable ONOFF_DUALSDS_INST's clocks */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS 0x004e0410 /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE 0x004e0414 /* Onoff dualsds inst clock enable */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS 0x004e0418 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK 0x004e041c /* Onoff dualsds inst observe clock */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK 0x004e0420 /* Onoff dualsds inst pll clock */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL       0x004e0424 /* Onoff dualsds inst sel */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE 0x004e0428 /* Disable ONOFF_DVP_HR_INST's clocks */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS 0x004e042c /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE 0x004e0430 /* Onoff dvp hr inst clock enable */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0 0x004e0434 /* Onoff dvp hr inst clock enable0 */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS 0x004e0438 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS 0x004e043c /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_CTRL 0x004e0440 /* Onoff dvp hr inst observe ctrl */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE 0x004e0444 /* Onoff dvp hr inst observe div enable */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_ENABLE 0x004e0448 /* Onoff dvp hr inst observe enable */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE 0x004e044c /* Disable ONOFF_DVP_MHT__7364_INST's clocks */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS 0x004e0450 /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE 0x004e0454 /* Onoff dvp mht  7364 inst clock enable */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS 0x004e0458 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE 0x004e045c /* Onoff dvp mht  7364 inst enable */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK 0x004e0460 /* Onoff dvp mht  7364 inst observe clock */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE 0x004e0464 /* Onoff eaglet top inst clock enable */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS 0x004e0468 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5 0x004e046c /* Onoff egphy28 1port 33v 90o fc inst div5 */
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL 0x004e0470 /* Onoff egphy28 1port 33v 90o fc inst sel */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE 0x004e0474 /* Disable ONOFF_FSK_TOP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS 0x004e0478 /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE 0x004e047c /* Onoff fsk top inst clock enable */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS 0x004e0480 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK 0x004e0484 /* Onoff fsk top inst observe clock */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE 0x004e0488 /* Disable ONOFF_GENET_TOP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS 0x004e048c /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE 0x004e0490 /* Onoff genet top inst clock enable */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 0x004e0494 /* Onoff genet top inst clock enable genet0 */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS 0x004e0498 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 0x004e049c /* Onoff genet top inst clock enable genet1 */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS 0x004e04a0 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2 0x004e04a4 /* Onoff genet top inst clock enable genet2 */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS 0x004e04a8 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS 0x004e04ac /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0 0x004e04b0 /* Onoff genet top inst clock select genet0 */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1 0x004e04b4 /* Onoff genet top inst clock select genet1 */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK 0x004e04b8 /* Onoff genet top inst observe clock */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE 0x004e04bc /* Disable ONOFF_HIF_INST's clocks */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS 0x004e04c0 /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE  0x004e04c4 /* Onoff hif inst clock enable */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_STATUS 0x004e04c8 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK 0x004e04cc /* Onoff hif inst observe clock */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE 0x004e04d0 /* Onoff hvd sid0 top inst clock enable */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID 0x004e04d4 /* Onoff hvd sid0 top inst clock enable sid */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS 0x004e04d8 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS 0x004e04dc /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK 0x004e04e0 /* Onoff hvd sid0 top inst observe clock */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT 0x004e04e4 /* Onoff hvd sid0 top inst select */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE 0x004e04e8 /* Disable ONOFF_LEAP_TOP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS 0x004e04ec /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE 0x004e04f0 /* Onoff leap top inst clock enable */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS 0x004e04f4 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE 0x004e04f8 /* Onoff memsys 16 inst clock enable */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS 0x004e04fc /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK 0x004e0500 /* Onoff memsys 16 inst observe clock */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_STATUS  0x004e0504 /* Onoff memsys 16 inst status */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE 0x004e0508 /* Onoff mocamac top inst clock enable */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS 0x004e050c /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK 0x004e0510 /* Onoff mocamac top inst observe clock */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE 0x004e0514 /* Onoff mocaphy top inst clock enable */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS 0x004e0518 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK 0x004e051c /* Onoff mocaphy top inst observe clock */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE 0x004e0520 /* Disable ONOFF_PCIE_X1_TOP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS 0x004e0524 /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE 0x004e0528 /* Onoff pcie x1 top inst clock enable */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS 0x004e052c /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK 0x004e0530 /* Onoff pcie x1 top inst observe clock */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE 0x004e0534 /* Disable ONOFF_PROD_OTP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS 0x004e0538 /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE 0x004e053c /* Onoff prod otp inst clock enable */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS 0x004e0540 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE 0x004e0544 /* Onoff raaga dsp top 0 inst clock enable */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS 0x004e0548 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT 0x004e054c /* Onoff raaga dsp top 0 inst clock select */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK 0x004e0550 /* Onoff raaga dsp top 0 inst observe clock */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE 0x004e0554 /* Onoff rfm top inst clock enable */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS 0x004e0558 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK 0x004e055c /* Onoff rfm top inst observe clock */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE 0x004e0560 /* Onoff sds afec2x top inst clock enable */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS 0x004e0564 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK 0x004e0568 /* Onoff sds afec2x top inst observe clock */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_SEL 0x004e056c /* Onoff sds afec2x top inst sel */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE 0x004e0570 /* Onoff sectop inst clock enable */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS 0x004e0574 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK 0x004e0578 /* Onoff sectop inst observe clock */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE 0x004e057c /* Onoff stb chan top inst clock enable */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS 0x004e0580 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK 0x004e0584 /* Onoff stb chan top inst observe clock */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE 0x004e0588 /* Disable ONOFF_SYS_CTRL_INST's clocks */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS 0x004e058c /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE 0x004e0590 /* Onoff sys ctrl inst clock enable */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS 0x004e0594 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK 0x004e0598 /* Onoff sys ctrl inst observe clock */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE 0x004e059c /* Onoff t2 bicm top inst clock enable */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS 0x004e05a0 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE 0x004e05a4 /* Disable ONOFF_UFE_T2_RCVR_TOP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS 0x004e05a8 /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE 0x004e05ac /* Onoff ufe t2 rcvr top inst clock enable */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS 0x004e05b0 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK 0x004e05b4 /* Onoff ufe t2 rcvr top inst observe clock */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE 0x004e05b8 /* Disable ONOFF_USB0_TOP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS 0x004e05bc /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE 0x004e05c0 /* Onoff usb0 top inst clock enable */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB 0x004e05c4 /* Onoff usb0 top inst clock enable ahb */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS 0x004e05c8 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI 0x004e05cc /* Onoff usb0 top inst clock enable axi */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS 0x004e05d0 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS 0x004e05d4 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK 0x004e05d8 /* Onoff usb0 top inst observe clock */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE 0x004e05dc /* Onoff v3d top inst clock enable */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS 0x004e05e0 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_SELECT 0x004e05e4 /* Onoff v3d top inst clock select */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE 0x004e05e8 /* Disable ONOFF_VEC_AIO_GFX_TOP_INST's clocks */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS 0x004e05ec /* Clock Disable Status */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE 0x004e05f0 /* Onoff vec aio gfx top inst clock enable */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0 0x004e05f4 /* Onoff vec aio gfx top inst clock enable m2mc0 */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS 0x004e05f8 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS 0x004e05fc /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC 0x004e0600 /* Onoff vec aio gfx top inst clock enable vec */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS 0x004e0604 /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP 0x004e0608 /* Onoff vec aio gfx top inst clock enable vip */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS 0x004e060c /* Clock Enable Status */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT 0x004e0610 /* Onoff vec aio gfx top inst clock select */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK 0x004e0614 /* Onoff vec aio gfx top inst observe clock */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE 0x004e0618 /* Disable ONOFF_XPT_TSIO_WRAPPER_INST's clocks */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS 0x004e061c /* Clock Disable Status */
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION     0x004e0620 /* Select observation clk */
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION     0x004e0624 /* Select observation clk */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE            0x004e0628 /* Disable PAD's clocks */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_STATUS     0x004e062c /* Clock Disable Status */
#define BCHP_CLKGEN_PAD_MUX_SELECT               0x004e0630 /* Mux selects for Pad clocks */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_STATUS     0x004e0634 /* PLL_AVX Reset Status */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL       0x004e0638 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST 0x004e063c /* PLL_CPU Glitchless Clock Switching */
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_STATUS 0x004e0640 /* PLL_CPU Glitchless Switching */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_STATUS     0x004e0644 /* PLL_CPU Reset Status */
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL       0x004e0648 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_STATUS     0x004e064c /* PLL_DTT Reset Status */
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL       0x004e0650 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_STATUS      0x004e0654 /* PLL_LC Reset Status */
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL        0x004e0658 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_STATUS    0x004e065c /* PLL_MOCA Reset Status */
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL      0x004e0660 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_STATUS 0x004e0664 /* PLL_NETWORK Reset Status */
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL   0x004e0668 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_STATUS   0x004e066c /* PLL_RAAGA Reset Status */
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL     0x004e0670 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_STATUS     0x004e0674 /* PLL_SC0 Reset Status */
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL       0x004e0678 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_STATUS     0x004e067c /* PLL_SC1 Reset Status */
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL       0x004e0680 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE           0x004e0684 /* Disable */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL      0x004e0688 /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL      0x004e068c /* PLL RDB Macro Disable */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_STATUS   0x004e0690 /* PLL_VCXO0 Reset Status */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_STATUS   0x004e0694 /* PLL_VCXO1 Reset Status */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL       0x004e0698 /* Select clocks that can stay alive during power management standby mode. */
#define BCHP_CLKGEN_PM_CLOCK_216_ALIVE_SEL       0x004e069c /* Select clocks that can stay alive during power management standby mode. */
#define BCHP_CLKGEN_PM_CLOCK_Async_ALIVE_SEL     0x004e06a0 /* Select clocks that can stay alive during power management standby mode. */
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL      0x004e06a4 /* Select clocks that can stay alive during power management standby mode. */
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL             0x004e06a8 /* PLL Alive in Standby Mode */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP           0x004e06ac /* Power management LDO PLL */
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT         0x004e06b0 /* Mux selects for Smartcard clocks */
#define BCHP_CLKGEN_SPARE                        0x004e06b4 /* Spares */
#define BCHP_CLKGEN_TESTPORT                     0x004e06b8 /* Special Testport Controls */

/***************************************************************************
 *PLL_AVX_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT  11

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT   1
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000009

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_AVX_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT  11

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT   1
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x00000007

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_AVX_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT  11

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT   1
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x00000009

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_AVX_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT  11

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT   1
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x00000006

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_AVX_PLL_CHANNEL_CTRL_CH_4 - PLL CHANNEL control CH 4
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_4 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_reserved0_SHIFT  11

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_4 :: POST_DIVIDER_HOLD_CH4 [10:10] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_MASK 0x00000400
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_SHIFT 10
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_4 :: PHASE_OFFSET_CH4 [09:09] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_MASK 0x00000200
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_SHIFT 9
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_4 :: MDIV_CH4 [08:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_SHIFT   1
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_DEFAULT 0x00000008

/* CLKGEN :: PLL_AVX_PLL_CHANNEL_CTRL_CH_4 :: CLOCK_DIS_CH4 [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_MASK 0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_DEFAULT 0x00000000

/***************************************************************************
 *PLL_AVX_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_reserved0_MASK                 0xffffc000
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_reserved0_SHIFT                14

/* CLKGEN :: PLL_AVX_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_PDIV_MASK                      0x00003c00
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_PDIV_SHIFT                     10
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_PDIV_DEFAULT                   0x00000003

/* CLKGEN :: PLL_AVX_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_NDIV_INT_MASK                  0x000003ff
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_NDIV_INT_SHIFT                 0
#define BCHP_CLKGEN_PLL_AVX_PLL_DIV_NDIV_INT_DEFAULT               0x000000a7

/***************************************************************************
 *PLL_AVX_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_reserved0_MASK                0xfffffc00
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_reserved0_SHIFT               10

/* CLKGEN :: PLL_AVX_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000003

/* CLKGEN :: PLL_AVX_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK        0x00000038
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT       3
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT     0x00000000

/* CLKGEN :: PLL_AVX_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000002

/***************************************************************************
 *PLL_AVX_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_LDO_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_AVX_PLL_LDO_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_AVX_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT      0
#define BCHP_CLKGEN_PLL_AVX_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT    0x00000001

/***************************************************************************
 *PLL_AVX_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_AVX_PLL_LOCK_STATUS_reserved0_MASK         0xfffffffc
#define BCHP_CLKGEN_PLL_AVX_PLL_LOCK_STATUS_reserved0_SHIFT        2

/* CLKGEN :: PLL_AVX_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_LOCK_STATUS_LOCK_LOST_MASK         0x00000002
#define BCHP_CLKGEN_PLL_AVX_PLL_LOCK_STATUS_LOCK_LOST_SHIFT        1

/* CLKGEN :: PLL_AVX_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_LOCK_STATUS_LOCK_MASK              0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_LOCK_STATUS_LOCK_SHIFT             0

/***************************************************************************
 *PLL_AVX_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_MISC :: VCO_RANGE [31:30] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_VCO_RANGE_MASK                0xc0000000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_VCO_RANGE_SHIFT               30
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_VCO_RANGE_DEFAULT             0x00000002

/* CLKGEN :: PLL_AVX_PLL_MISC :: VCO_FB_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_VCO_FB_DIV2_MASK              0x20000000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_VCO_FB_DIV2_SHIFT             29
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_VCO_FB_DIV2_DEFAULT           0x00000001

/* CLKGEN :: PLL_AVX_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_UPDATE_MASK              0x10000000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_UPDATE_SHIFT             28
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_UPDATE_DEFAULT           0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_SELECT_MASK              0x0e000000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_SELECT_SHIFT             25
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_SELECT_DEFAULT           0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_RESET_MASK               0x01000000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_RESET_SHIFT              24
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_RESET_DEFAULT            0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_MODE_MASK                0x00c00000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_MODE_SHIFT               22
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_STAT_MODE_DEFAULT             0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: PWM_RATE [21:20] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PWM_RATE_MASK                 0x00300000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PWM_RATE_SHIFT                20
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PWM_RATE_DEFAULT              0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: POST_CTRL_RESETB [19:18] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_POST_CTRL_RESETB_MASK         0x000c0000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_POST_CTRL_RESETB_SHIFT        18
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_POST_CTRL_RESETB_DEFAULT      0x00000002

/* CLKGEN :: PLL_AVX_PLL_MISC :: PLLRESERVED2 [17:16] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PLLRESERVED2_MASK             0x00030000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PLLRESERVED2_SHIFT            16
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PLLRESERVED2_DEFAULT          0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: PLLRESERVED1 [15:15] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PLLRESERVED1_MASK             0x00008000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PLLRESERVED1_SHIFT            15
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_PLLRESERVED1_DEFAULT          0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: NDIV_RELOCK [14:14] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_NDIV_RELOCK_MASK              0x00004000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_NDIV_RELOCK_SHIFT             14
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_NDIV_RELOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: FAST_LOCK [13:13] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_FAST_LOCK_MASK                0x00002000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_FAST_LOCK_SHIFT               13
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_FAST_LOCK_DEFAULT             0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [12:12] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK   0x00001000
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT  12
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC :: DCO_CTRL_BYPASS [11:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_DCO_CTRL_BYPASS_MASK          0x00000fff
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_DCO_CTRL_BYPASS_SHIFT         0
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT       0x00000000

/***************************************************************************
 *PLL_AVX_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_MISC2 :: PLLRESERVED0 [31:02] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC2_PLLRESERVED0_MASK            0xfffffffc
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC2_PLLRESERVED0_SHIFT           2
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC2_PLLRESERVED0_DEFAULT         0x00000000

/* CLKGEN :: PLL_AVX_PLL_MISC2 :: LDO [01:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC2_LDO_MASK                     0x00000003
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC2_LDO_SHIFT                    0
#define BCHP_CLKGEN_PLL_AVX_PLL_MISC2_LDO_DEFAULT                  0x00000001

/***************************************************************************
 *PLL_AVX_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_PWRON_reserved0_MASK               0xfffffffe
#define BCHP_CLKGEN_PLL_AVX_PLL_PWRON_reserved0_SHIFT              1

/* CLKGEN :: PLL_AVX_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_PWRON_PWRON_PLL_MASK               0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_PWRON_PWRON_PLL_SHIFT              0
#define BCHP_CLKGEN_PLL_AVX_PLL_PWRON_PWRON_PLL_DEFAULT            0x00000001

/***************************************************************************
 *PLL_AVX_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_reserved0_MASK               0xfffffffc
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_reserved0_SHIFT              2

/* CLKGEN :: PLL_AVX_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_RESETD_MASK                  0x00000002
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_RESETD_SHIFT                 1
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_RESETD_DEFAULT               0x00000000

/* CLKGEN :: PLL_AVX_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_RESETA_MASK                  0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_RESETA_SHIFT                 0
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_RESETA_DEFAULT               0x00000000

/***************************************************************************
 *PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_AVX_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_AVX_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_AVX_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_AVX_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_AVX_PLL_STATUS_reserved0_MASK              0xfffff000
#define BCHP_CLKGEN_PLL_AVX_PLL_STATUS_reserved0_SHIFT             12

/* CLKGEN :: PLL_AVX_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_STATUS_TEST_STATUS_MASK            0x00000fff
#define BCHP_CLKGEN_PLL_AVX_PLL_STATUS_TEST_STATUS_SHIFT           0

/***************************************************************************
 *PLL_CPU_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT  11

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT   1
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000005

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT  11

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT   1
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x00000007

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT  11

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT   1
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x0000000b

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT  11

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT   1
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x0000000d

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_CHANNEL_CTRL_CH_4 - PLL CHANNEL control CH 4
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_4 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_reserved0_SHIFT  11

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_4 :: POST_DIVIDER_HOLD_CH4 [10:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_MASK 0x00000400
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_SHIFT 10
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_4 :: PHASE_OFFSET_CH4 [09:09] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_MASK 0x00000200
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_SHIFT 9
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_4 :: MDIV_CH4 [08:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_SHIFT   1
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_DEFAULT 0x00000009

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_4 :: CLOCK_DIS_CH4 [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_CHANNEL_CTRL_CH_5 - PLL CHANNEL control CH 5
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_5 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_reserved0_SHIFT  11

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_5 :: POST_DIVIDER_HOLD_CH5 [10:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_MASK 0x00000400
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_SHIFT 10
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_5 :: PHASE_OFFSET_CH5 [09:09] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_MASK 0x00000200
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_SHIFT 9
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_5 :: MDIV_CH5 [08:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_SHIFT   1
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_DEFAULT 0x00000009

/* CLKGEN :: PLL_CPU_PLL_CHANNEL_CTRL_CH_5 :: CLOCK_DIS_CH5 [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_reserved0_MASK                 0xffffc000
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_reserved0_SHIFT                14

/* CLKGEN :: PLL_CPU_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_PDIV_MASK                      0x00003c00
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_PDIV_SHIFT                     10
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_PDIV_DEFAULT                   0x00000003

/* CLKGEN :: PLL_CPU_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_NDIV_INT_MASK                  0x000003ff
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_NDIV_INT_SHIFT                 0
#define BCHP_CLKGEN_PLL_CPU_PLL_DIV_NDIV_INT_DEFAULT               0x000000a7

/***************************************************************************
 *PLL_CPU_PLL_FRAC - Fractional
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_FRAC :: reserved0 [31:20] */
#define BCHP_CLKGEN_PLL_CPU_PLL_FRAC_reserved0_MASK                0xfff00000
#define BCHP_CLKGEN_PLL_CPU_PLL_FRAC_reserved0_SHIFT               20

/* CLKGEN :: PLL_CPU_PLL_FRAC :: FRAC_CONTROL [19:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_FRAC_FRAC_CONTROL_MASK             0x000fffff
#define BCHP_CLKGEN_PLL_CPU_PLL_FRAC_FRAC_CONTROL_SHIFT            0
#define BCHP_CLKGEN_PLL_CPU_PLL_FRAC_FRAC_CONTROL_DEFAULT          0x00000000

/***************************************************************************
 *PLL_CPU_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_reserved0_MASK                0xfffffc00
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_reserved0_SHIFT               10

/* CLKGEN :: PLL_CPU_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000003

/* CLKGEN :: PLL_CPU_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK        0x00000038
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT       3
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT     0x00000000

/* CLKGEN :: PLL_CPU_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000002

/***************************************************************************
 *PLL_CPU_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_LDO_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_CPU_PLL_LDO_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_CPU_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT      0
#define BCHP_CLKGEN_PLL_CPU_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT    0x00000001

/***************************************************************************
 *PLL_CPU_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_CPU_PLL_LOCK_STATUS_reserved0_MASK         0xfffffffc
#define BCHP_CLKGEN_PLL_CPU_PLL_LOCK_STATUS_reserved0_SHIFT        2

/* CLKGEN :: PLL_CPU_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_LOCK_STATUS_LOCK_LOST_MASK         0x00000002
#define BCHP_CLKGEN_PLL_CPU_PLL_LOCK_STATUS_LOCK_LOST_SHIFT        1

/* CLKGEN :: PLL_CPU_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_LOCK_STATUS_LOCK_MASK              0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_LOCK_STATUS_LOCK_SHIFT             0

/***************************************************************************
 *PLL_CPU_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_MISC :: VCO_RANGE [31:30] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_VCO_RANGE_MASK                0xc0000000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_VCO_RANGE_SHIFT               30
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_VCO_RANGE_DEFAULT             0x00000002

/* CLKGEN :: PLL_CPU_PLL_MISC :: VCO_FB_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_VCO_FB_DIV2_MASK              0x20000000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_VCO_FB_DIV2_SHIFT             29
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_VCO_FB_DIV2_DEFAULT           0x00000001

/* CLKGEN :: PLL_CPU_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_UPDATE_MASK              0x10000000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_UPDATE_SHIFT             28
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_UPDATE_DEFAULT           0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_SELECT_MASK              0x0e000000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_SELECT_SHIFT             25
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_SELECT_DEFAULT           0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_RESET_MASK               0x01000000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_RESET_SHIFT              24
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_RESET_DEFAULT            0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_MODE_MASK                0x00c00000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_MODE_SHIFT               22
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_STAT_MODE_DEFAULT             0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: PWM_RATE [21:20] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PWM_RATE_MASK                 0x00300000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PWM_RATE_SHIFT                20
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PWM_RATE_DEFAULT              0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: POST_CTRL_RESETB [19:18] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_POST_CTRL_RESETB_MASK         0x000c0000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_POST_CTRL_RESETB_SHIFT        18
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_POST_CTRL_RESETB_DEFAULT      0x00000003

/* CLKGEN :: PLL_CPU_PLL_MISC :: PLLRESERVED2 [17:16] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PLLRESERVED2_MASK             0x00030000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PLLRESERVED2_SHIFT            16
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PLLRESERVED2_DEFAULT          0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: PLLRESERVED1 [15:15] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PLLRESERVED1_MASK             0x00008000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PLLRESERVED1_SHIFT            15
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_PLLRESERVED1_DEFAULT          0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: NDIV_RELOCK [14:14] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_NDIV_RELOCK_MASK              0x00004000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_NDIV_RELOCK_SHIFT             14
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_NDIV_RELOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: FAST_LOCK [13:13] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_FAST_LOCK_MASK                0x00002000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_FAST_LOCK_SHIFT               13
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_FAST_LOCK_DEFAULT             0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [12:12] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK   0x00001000
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT  12
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC :: DCO_CTRL_BYPASS [11:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_DCO_CTRL_BYPASS_MASK          0x00000fff
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_DCO_CTRL_BYPASS_SHIFT         0
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT       0x00000000

/***************************************************************************
 *PLL_CPU_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_MISC2 :: PLLRESERVED0 [31:02] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC2_PLLRESERVED0_MASK            0xfffffffc
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC2_PLLRESERVED0_SHIFT           2
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC2_PLLRESERVED0_DEFAULT         0x00000000

/* CLKGEN :: PLL_CPU_PLL_MISC2 :: LDO [01:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC2_LDO_MASK                     0x00000003
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC2_LDO_SHIFT                    0
#define BCHP_CLKGEN_PLL_CPU_PLL_MISC2_LDO_DEFAULT                  0x00000001

/***************************************************************************
 *PLL_CPU_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_PWRON_reserved0_MASK               0xfffffffe
#define BCHP_CLKGEN_PLL_CPU_PLL_PWRON_reserved0_SHIFT              1

/* CLKGEN :: PLL_CPU_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_PWRON_PWRON_PLL_MASK               0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_PWRON_PWRON_PLL_SHIFT              0
#define BCHP_CLKGEN_PLL_CPU_PLL_PWRON_PWRON_PLL_DEFAULT            0x00000001

/***************************************************************************
 *PLL_CPU_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_reserved0_MASK               0xfffffffc
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_reserved0_SHIFT              2

/* CLKGEN :: PLL_CPU_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_RESETD_MASK                  0x00000002
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_RESETD_SHIFT                 1
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_RESETD_DEFAULT               0x00000000

/* CLKGEN :: PLL_CPU_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_RESETA_MASK                  0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_RESETA_SHIFT                 0
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_RESETA_DEFAULT               0x00000000

/***************************************************************************
 *PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_CPU_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_CPU_PLL_STATUS_reserved0_MASK              0xfffff000
#define BCHP_CLKGEN_PLL_CPU_PLL_STATUS_reserved0_SHIFT             12

/* CLKGEN :: PLL_CPU_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_STATUS_TEST_STATUS_MASK            0x00000fff
#define BCHP_CLKGEN_PLL_CPU_PLL_STATUS_TEST_STATUS_SHIFT           0

/***************************************************************************
 *PLL_DTT_PLL_BG_PWRON - Bandgap Power on
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_BG_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_BG_PWRON_reserved0_MASK            0xfffffffe
#define BCHP_CLKGEN_PLL_DTT_PLL_BG_PWRON_reserved0_SHIFT           1

/* CLKGEN :: PLL_DTT_PLL_BG_PWRON :: BG_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_BG_PWRON_BG_PWRON_PLL_MASK         0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_BG_PWRON_BG_PWRON_PLL_SHIFT        0
#define BCHP_CLKGEN_PLL_DTT_PLL_BG_PWRON_BG_PWRON_PLL_DEFAULT      0x00000001

/***************************************************************************
 *PLL_DTT_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT  11

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT   1
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x0000000c

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_DTT_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT  11

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT   1
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x0000000c

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_DTT_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT  11

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT   1
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x00000006

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_DTT_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT  11

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT   1
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x00000005

/* CLKGEN :: PLL_DTT_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_DTT_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_DTT_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_reserved0_MASK                 0xffffc000
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_reserved0_SHIFT                14

/* CLKGEN :: PLL_DTT_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_PDIV_MASK                      0x00003c00
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_PDIV_SHIFT                     10
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_PDIV_DEFAULT                   0x00000001

/* CLKGEN :: PLL_DTT_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_NDIV_INT_MASK                  0x000003ff
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_NDIV_INT_SHIFT                 0
#define BCHP_CLKGEN_PLL_DTT_PLL_DIV_NDIV_INT_DEFAULT               0x00000030

/***************************************************************************
 *PLL_DTT_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_reserved0_MASK                0xfffffc00
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_reserved0_SHIFT               10

/* CLKGEN :: PLL_DTT_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000007

/* CLKGEN :: PLL_DTT_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK        0x00000038
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT       3
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT     0x00000000

/* CLKGEN :: PLL_DTT_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_DTT_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000003

/***************************************************************************
 *PLL_DTT_PLL_HOLD_CH_ALL - Hold PLL all channels
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_HOLD_CH_ALL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_HOLD_CH_ALL_reserved0_MASK         0xfffffffe
#define BCHP_CLKGEN_PLL_DTT_PLL_HOLD_CH_ALL_reserved0_SHIFT        1

/* CLKGEN :: PLL_DTT_PLL_HOLD_CH_ALL :: HOLD_CH_ALL [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_HOLD_CH_ALL_HOLD_CH_ALL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_HOLD_CH_ALL_HOLD_CH_ALL_SHIFT      0
#define BCHP_CLKGEN_PLL_DTT_PLL_HOLD_CH_ALL_HOLD_CH_ALL_DEFAULT    0x00000000

/***************************************************************************
 *PLL_DTT_PLL_LDO_CTRL - Ldo voltage control
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_LDO_CTRL :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_CTRL_reserved0_MASK            0xffff0000
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_CTRL_reserved0_SHIFT           16

/* CLKGEN :: PLL_DTT_PLL_LDO_CTRL :: LDO_CTRL [15:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_CTRL_LDO_CTRL_MASK             0x0000ffff
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_CTRL_LDO_CTRL_SHIFT            0
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_CTRL_LDO_CTRL_DEFAULT          0x00005005

/***************************************************************************
 *PLL_DTT_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_DTT_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT      0
#define BCHP_CLKGEN_PLL_DTT_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT    0x00000001

/***************************************************************************
 *PLL_DTT_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_DTT_PLL_LOCK_STATUS_reserved0_MASK         0xfffffffc
#define BCHP_CLKGEN_PLL_DTT_PLL_LOCK_STATUS_reserved0_SHIFT        2

/* CLKGEN :: PLL_DTT_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_LOCK_STATUS_LOCK_LOST_MASK         0x00000002
#define BCHP_CLKGEN_PLL_DTT_PLL_LOCK_STATUS_LOCK_LOST_SHIFT        1

/* CLKGEN :: PLL_DTT_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_LOCK_STATUS_LOCK_MASK              0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_LOCK_STATUS_LOCK_SHIFT             0

/***************************************************************************
 *PLL_DTT_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_MISC :: VCO_RANGE_LOW [31:31] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_RANGE_LOW_MASK            0x80000000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_RANGE_LOW_SHIFT           31
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_RANGE_LOW_DEFAULT         0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: VCO_RANGE_HIGH [30:30] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_RANGE_HIGH_MASK           0x40000000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_RANGE_HIGH_SHIFT          30
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_RANGE_HIGH_DEFAULT        0x00000001

/* CLKGEN :: PLL_DTT_PLL_MISC :: VCO_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_DIV2_MASK                 0x20000000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_DIV2_SHIFT                29
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_VCO_DIV2_DEFAULT              0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_UPDATE_MASK              0x10000000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_UPDATE_SHIFT             28
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_UPDATE_DEFAULT           0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_SELECT_MASK              0x0e000000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_SELECT_SHIFT             25
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_SELECT_DEFAULT           0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_RESET_MASK               0x01000000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_RESET_SHIFT              24
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_RESET_DEFAULT            0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_MODE_MASK                0x00c00000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_MODE_SHIFT               22
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_STAT_MODE_DEFAULT             0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: REF_ALT_OFFS [21:21] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_REF_ALT_OFFS_MASK             0x00200000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_REF_ALT_OFFS_SHIFT            21
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_REF_ALT_OFFS_DEFAULT          0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: PWM_RATE [20:19] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_PWM_RATE_MASK                 0x00180000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_PWM_RATE_SHIFT                19
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_PWM_RATE_DEFAULT              0x00000002

/* CLKGEN :: PLL_DTT_PLL_MISC :: POST_CTRL_RESETB [18:17] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_POST_CTRL_RESETB_MASK         0x00060000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_POST_CTRL_RESETB_SHIFT        17
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_POST_CTRL_RESETB_DEFAULT      0x00000002

/* CLKGEN :: PLL_DTT_PLL_MISC :: NDIV_RELOCK [16:16] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_NDIV_RELOCK_MASK              0x00010000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_NDIV_RELOCK_SHIFT             16
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_NDIV_RELOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: FAST_LOCK [15:15] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_FAST_LOCK_MASK                0x00008000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_FAST_LOCK_SHIFT               15
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_FAST_LOCK_DEFAULT             0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: DITHER_DISABLE [14:14] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DITHER_DISABLE_MASK           0x00004000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DITHER_DISABLE_SHIFT          14
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DITHER_DISABLE_DEFAULT        0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [13:13] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK   0x00002000
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT  13
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: DCO_CTRL_BYPASS [12:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DCO_CTRL_BYPASS_MASK          0x00001ffe
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DCO_CTRL_BYPASS_SHIFT         1
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT       0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC :: AUX_CTRL [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_AUX_CTRL_MASK                 0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_AUX_CTRL_SHIFT                0
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC_AUX_CTRL_DEFAULT              0x00000000

/***************************************************************************
 *PLL_DTT_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_MISC2 :: PLLRESERVED0 [31:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC2_PLLRESERVED0_MASK            0xfffffffe
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC2_PLLRESERVED0_SHIFT           1
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC2_PLLRESERVED0_DEFAULT         0x00000000

/* CLKGEN :: PLL_DTT_PLL_MISC2 :: DIG_INPUT_SEL [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC2_DIG_INPUT_SEL_MASK           0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC2_DIG_INPUT_SEL_SHIFT          0
#define BCHP_CLKGEN_PLL_DTT_PLL_MISC2_DIG_INPUT_SEL_DEFAULT        0x00000000

/***************************************************************************
 *PLL_DTT_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_PWRON_reserved0_MASK               0xfffffffe
#define BCHP_CLKGEN_PLL_DTT_PLL_PWRON_reserved0_SHIFT              1

/* CLKGEN :: PLL_DTT_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_PWRON_PWRON_PLL_MASK               0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_PWRON_PWRON_PLL_SHIFT              0
#define BCHP_CLKGEN_PLL_DTT_PLL_PWRON_PWRON_PLL_DEFAULT            0x00000001

/***************************************************************************
 *PLL_DTT_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_reserved0_MASK               0xfffffffc
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_reserved0_SHIFT              2

/* CLKGEN :: PLL_DTT_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_RESETD_MASK                  0x00000002
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_RESETD_SHIFT                 1
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_RESETD_DEFAULT               0x00000000

/* CLKGEN :: PLL_DTT_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_RESETA_MASK                  0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_RESETA_SHIFT                 0
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_RESETA_DEFAULT               0x00000000

/***************************************************************************
 *PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_DTT_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_DTT_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_DTT_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_DTT_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_DTT_PLL_STATUS_reserved0_MASK              0xfffff000
#define BCHP_CLKGEN_PLL_DTT_PLL_STATUS_reserved0_SHIFT             12

/* CLKGEN :: PLL_DTT_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_STATUS_TEST_STATUS_MASK            0x00000fff
#define BCHP_CLKGEN_PLL_DTT_PLL_STATUS_TEST_STATUS_SHIFT           0

/***************************************************************************
 *PLL_LC_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK    0xfffff800
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT   11

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK     0x000001fe
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT    1
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT  0x0000002d

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_LC_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK    0xfffff800
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT   11

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK     0x000001fe
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT    1
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT  0x00000036

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_LC_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK    0xfffff800
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT   11

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK     0x000001fe
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT    1
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT  0x0000006c

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_LC_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK    0xfffff800
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT   11

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK     0x000001fe
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT    1
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT  0x0000005a

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_LC_PLL_CHANNEL_CTRL_CH_4 - PLL CHANNEL control CH 4
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_4 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_reserved0_MASK    0xfffff800
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_reserved0_SHIFT   11

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_4 :: POST_DIVIDER_HOLD_CH4 [10:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_MASK 0x00000400
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_SHIFT 10
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_4 :: PHASE_OFFSET_CH4 [09:09] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_MASK 0x00000200
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_SHIFT 9
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_4 :: MDIV_CH4 [08:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_MASK     0x000001fe
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_SHIFT    1
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_DEFAULT  0x00000019

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_4 :: CLOCK_DIS_CH4 [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_MASK 0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_SHIFT 0
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_DEFAULT 0x00000000

/***************************************************************************
 *PLL_LC_PLL_CHANNEL_CTRL_CH_5 - PLL CHANNEL control CH 5
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_5 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_reserved0_MASK    0xfffff800
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_reserved0_SHIFT   11

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_5 :: POST_DIVIDER_HOLD_CH5 [10:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_MASK 0x00000400
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_SHIFT 10
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_5 :: PHASE_OFFSET_CH5 [09:09] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_MASK 0x00000200
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_SHIFT 9
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_5 :: MDIV_CH5 [08:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_MASK     0x000001fe
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_SHIFT    1
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_DEFAULT  0x0000001b

/* CLKGEN :: PLL_LC_PLL_CHANNEL_CTRL_CH_5 :: CLOCK_DIS_CH5 [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_MASK 0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_SHIFT 0
#define BCHP_CLKGEN_PLL_LC_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_DEFAULT 0x00000000

/***************************************************************************
 *PLL_LC_PLL_CONTROL - Miscellaneous Controls
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_CONTROL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_CONTROL_reserved0_MASK              0xfffffffe
#define BCHP_CLKGEN_PLL_LC_PLL_CONTROL_reserved0_SHIFT             1

/* CLKGEN :: PLL_LC_PLL_CONTROL :: REF_SEL [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_CONTROL_REF_SEL_MASK                0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_CONTROL_REF_SEL_SHIFT               0
#define BCHP_CLKGEN_PLL_LC_PLL_CONTROL_REF_SEL_DEFAULT             0x00000000

/***************************************************************************
 *PLL_LC_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_reserved0_MASK                  0xffffc000
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_reserved0_SHIFT                 14

/* CLKGEN :: PLL_LC_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_PDIV_MASK                       0x00003c00
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_PDIV_SHIFT                      10
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_PDIV_DEFAULT                    0x00000001

/* CLKGEN :: PLL_LC_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_NDIV_INT_MASK                   0x000003ff
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_NDIV_INT_SHIFT                  0
#define BCHP_CLKGEN_PLL_LC_PLL_DIV_NDIV_INT_DEFAULT                0x00000032

/***************************************************************************
 *PLL_LC_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_GAIN :: reserved0 [31:07] */
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_reserved0_MASK                 0xffffff80
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_reserved0_SHIFT                7

/* CLKGEN :: PLL_LC_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [06:03] */
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x00000078
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 3
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000005

/* CLKGEN :: PLL_LC_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_LC_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000003

/***************************************************************************
 *PLL_LC_PLL_HOLD_CH_ALL - Hold PLL all channels
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_HOLD_CH_ALL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_HOLD_CH_ALL_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_LC_PLL_HOLD_CH_ALL_reserved0_SHIFT         1

/* CLKGEN :: PLL_LC_PLL_HOLD_CH_ALL :: HOLD_CH_ALL [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_HOLD_CH_ALL_HOLD_CH_ALL_MASK        0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_HOLD_CH_ALL_HOLD_CH_ALL_SHIFT       0
#define BCHP_CLKGEN_PLL_LC_PLL_HOLD_CH_ALL_HOLD_CH_ALL_DEFAULT     0x00000000

/***************************************************************************
 *PLL_LC_PLL_LDO_CTRL - Ldo voltage control
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_LDO_CTRL :: reserved0 [31:06] */
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_CTRL_reserved0_MASK             0xffffffc0
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_CTRL_reserved0_SHIFT            6

/* CLKGEN :: PLL_LC_PLL_LDO_CTRL :: LDO_CTRL [05:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_CTRL_LDO_CTRL_MASK              0x0000003f
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_CTRL_LDO_CTRL_SHIFT             0
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_CTRL_LDO_CTRL_DEFAULT           0x00000000

/***************************************************************************
 *PLL_LC_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_PWRON_reserved0_MASK            0xfffffffe
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_PWRON_reserved0_SHIFT           1

/* CLKGEN :: PLL_LC_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK        0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT       0
#define BCHP_CLKGEN_PLL_LC_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT     0x00000001

/***************************************************************************
 *PLL_LC_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_LOCK_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_LOCK_STATUS_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_LC_PLL_LOCK_STATUS_reserved0_SHIFT         1

/* CLKGEN :: PLL_LC_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_LOCK_STATUS_LOCK_MASK               0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_LOCK_STATUS_LOCK_SHIFT              0

/***************************************************************************
 *PLL_LC_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_MISC :: VCO_PREDIV_RATIO [31:31] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_VCO_PREDIV_RATIO_MASK          0x80000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_VCO_PREDIV_RATIO_SHIFT         31
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_VCO_PREDIV_RATIO_DEFAULT       0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: T2D_DELAY_SEL_LOW [30:28] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_T2D_DELAY_SEL_LOW_MASK         0x70000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_T2D_DELAY_SEL_LOW_SHIFT        28
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_T2D_DELAY_SEL_LOW_DEFAULT      0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: SEL_MEASURE_UNIT [27:25] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_SEL_MEASURE_UNIT_MASK          0x0e000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_SEL_MEASURE_UNIT_SHIFT         25
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_SEL_MEASURE_UNIT_DEFAULT       0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: RESET_MEASURE_MODE [24:24] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_RESET_MEASURE_MODE_MASK        0x01000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_RESET_MEASURE_MODE_SHIFT       24
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_RESET_MEASURE_MODE_DEFAULT     0x00000001

/* CLKGEN :: PLL_LC_PLL_MISC :: LOAD_DCO_BYP_WORD [23:23] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_LOAD_DCO_BYP_WORD_MASK         0x00800000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_LOAD_DCO_BYP_WORD_SHIFT        23
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_LOAD_DCO_BYP_WORD_DEFAULT      0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: FREQ_BYP_WORD [22:07] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_FREQ_BYP_WORD_MASK             0x007fff80
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_FREQ_BYP_WORD_SHIFT            7
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_FREQ_BYP_WORD_DEFAULT          0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: EN_DCO_OUTPUT [06:06] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_DCO_OUTPUT_MASK             0x00000040
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_DCO_OUTPUT_SHIFT            6
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_DCO_OUTPUT_DEFAULT          0x00000001

/* CLKGEN :: PLL_LC_PLL_MISC :: EN_DCO_BYP_WORD [05:05] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_DCO_BYP_WORD_MASK           0x00000020
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_DCO_BYP_WORD_SHIFT          5
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_DCO_BYP_WORD_DEFAULT        0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: EN_BANGBANG_MODE [04:04] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_BANGBANG_MODE_MASK          0x00000010
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_BANGBANG_MODE_SHIFT         4
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_EN_BANGBANG_MODE_DEFAULT       0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: CTRL_MEASURE_MODE [03:02] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_CTRL_MEASURE_MODE_MASK         0x0000000c
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_CTRL_MEASURE_MODE_SHIFT        2
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_CTRL_MEASURE_MODE_DEFAULT      0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: CHANGE_MEASURE_UNIT [01:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_CHANGE_MEASURE_UNIT_MASK       0x00000002
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_CHANGE_MEASURE_UNIT_SHIFT      1
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_CHANGE_MEASURE_UNIT_DEFAULT    0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC :: BOOST_BIAS_CIRCUIT [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_BOOST_BIAS_CIRCUIT_MASK        0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_BOOST_BIAS_CIRCUIT_SHIFT       0
#define BCHP_CLKGEN_PLL_LC_PLL_MISC_BOOST_BIAS_CIRCUIT_DEFAULT     0x00000001

/***************************************************************************
 *PLL_LC_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_MISC2 :: VCO_POST_MUX_EN [31:31] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_VCO_POST_MUX_EN_MASK          0x80000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_VCO_POST_MUX_EN_SHIFT         31
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_VCO_POST_MUX_EN_DEFAULT       0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: T2D_DELAY_SEL_HIGH [30:30] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_T2D_DELAY_SEL_HIGH_MASK       0x40000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_T2D_DELAY_SEL_HIGH_SHIFT      30
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_T2D_DELAY_SEL_HIGH_DEFAULT    0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: SEL_TEST_CLK [29:29] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_SEL_TEST_CLK_MASK             0x20000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_SEL_TEST_CLK_SHIFT            29
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_SEL_TEST_CLK_DEFAULT          0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: SEL_DIFF_REFCLK_SRC [28:28] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_SEL_DIFF_REFCLK_SRC_MASK      0x10000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_SEL_DIFF_REFCLK_SRC_SHIFT     28
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_SEL_DIFF_REFCLK_SRC_DEFAULT   0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: REFD2C_BIAS [27:25] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_REFD2C_BIAS_MASK              0x0e000000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_REFD2C_BIAS_SHIFT             25
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_REFD2C_BIAS_DEFAULT           0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: PLLRESERVED0 [24:15] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_PLLRESERVED0_MASK             0x01ff8000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_PLLRESERVED0_SHIFT            15
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_PLLRESERVED0_DEFAULT          0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: O_FREF_DISABLE [14:14] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_O_FREF_DISABLE_MASK           0x00004000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_O_FREF_DISABLE_SHIFT          14
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_O_FREF_DISABLE_DEFAULT        0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: KI_STARTLOW [13:13] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_KI_STARTLOW_MASK              0x00002000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_KI_STARTLOW_SHIFT             13
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_KI_STARTLOW_DEFAULT           0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: KI_BOOST [12:12] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_KI_BOOST_MASK                 0x00001000
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_KI_BOOST_SHIFT                12
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_KI_BOOST_DEFAULT              0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: INTERNAL_RESET_MODE [11:10] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_INTERNAL_RESET_MODE_MASK      0x00000c00
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_INTERNAL_RESET_MODE_SHIFT     10
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_INTERNAL_RESET_MODE_DEFAULT   0x00000002

/* CLKGEN :: PLL_LC_PLL_MISC2 :: EN_TEST_CLK [09:09] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_TEST_CLK_MASK              0x00000200
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_TEST_CLK_SHIFT             9
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_TEST_CLK_DEFAULT           0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: EN_BYPCLK_1 [08:08] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_BYPCLK_1_MASK              0x00000100
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_BYPCLK_1_SHIFT             8
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_BYPCLK_1_DEFAULT           0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: EN_BYPCLK_0 [07:07] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_BYPCLK_0_MASK              0x00000080
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_BYPCLK_0_SHIFT             7
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_BYPCLK_0_DEFAULT           0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: EN_50OHM [06:06] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_50OHM_MASK                 0x00000040
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_50OHM_SHIFT                6
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_EN_50OHM_DEFAULT              0x00000000

/* CLKGEN :: PLL_LC_PLL_MISC2 :: DCO_PWM_RATE_CTRL [05:04] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_DCO_PWM_RATE_CTRL_MASK        0x00000030
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_DCO_PWM_RATE_CTRL_SHIFT       4
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_DCO_PWM_RATE_CTRL_DEFAULT     0x00000002

/* CLKGEN :: PLL_LC_PLL_MISC2 :: CTRL_2ND_POLE [03:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_CTRL_2ND_POLE_MASK            0x0000000f
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_CTRL_2ND_POLE_SHIFT           0
#define BCHP_CLKGEN_PLL_LC_PLL_MISC2_CTRL_2ND_POLE_DEFAULT         0x00000000

/***************************************************************************
 *PLL_LC_PLL_OUTSEL_SEL - selection of the output clock from the PLL core
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_OUTSEL_SEL :: reserved0 [31:03] */
#define BCHP_CLKGEN_PLL_LC_PLL_OUTSEL_SEL_reserved0_MASK           0xfffffff8
#define BCHP_CLKGEN_PLL_LC_PLL_OUTSEL_SEL_reserved0_SHIFT          3

/* CLKGEN :: PLL_LC_PLL_OUTSEL_SEL :: OUTPUT_SEL [02:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_OUTSEL_SEL_OUTPUT_SEL_MASK          0x00000007
#define BCHP_CLKGEN_PLL_LC_PLL_OUTSEL_SEL_OUTPUT_SEL_SHIFT         0
#define BCHP_CLKGEN_PLL_LC_PLL_OUTSEL_SEL_OUTPUT_SEL_DEFAULT       0x00000000

/***************************************************************************
 *PLL_LC_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_PWRON_reserved0_MASK                0xfffffffe
#define BCHP_CLKGEN_PLL_LC_PLL_PWRON_reserved0_SHIFT               1

/* CLKGEN :: PLL_LC_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_PWRON_PWRON_PLL_MASK                0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_PWRON_PWRON_PLL_SHIFT               0
#define BCHP_CLKGEN_PLL_LC_PLL_PWRON_PWRON_PLL_DEFAULT             0x00000001

/***************************************************************************
 *PLL_LC_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_reserved0_MASK                0xfffffffc
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_reserved0_SHIFT               2

/* CLKGEN :: PLL_LC_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_RESETD_MASK                   0x00000002
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_RESETD_SHIFT                  1
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_RESETD_DEFAULT                0x00000000

/* CLKGEN :: PLL_LC_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_RESETA_MASK                   0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_RESETA_SHIFT                  0
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_RESETA_DEFAULT                0x00000000

/***************************************************************************
 *PLL_LC_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_STATUS :: TEST_STATUS [31:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_STATUS_TEST_STATUS_MASK             0xffffffff
#define BCHP_CLKGEN_PLL_LC_PLL_STATUS_TEST_STATUS_SHIFT            0

/***************************************************************************
 *PLL_LC_PLL_TEST - enable and selection pf PLL test
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_TEST :: reserved0 [31:04] */
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_reserved0_MASK                 0xfffffff0
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_reserved0_SHIFT                4

/* CLKGEN :: PLL_LC_PLL_TEST :: TEST_SEL [03:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_TEST_SEL_MASK                  0x0000000e
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_TEST_SEL_SHIFT                 1
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_TEST_SEL_DEFAULT               0x00000000

/* CLKGEN :: PLL_LC_PLL_TEST :: TEST_ENABLE [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_TEST_ENABLE_MASK               0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_TEST_ENABLE_SHIFT              0
#define BCHP_CLKGEN_PLL_LC_PLL_TEST_TEST_ENABLE_DEFAULT            0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT 11

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT  1
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000009

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT 11

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT  1
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x00000009

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT 11

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT  1
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x00000024

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT 11

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT  1
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x00000024

/* CLKGEN :: PLL_MOCA_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_MOCA_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_reserved0_MASK                0xffffc000
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_reserved0_SHIFT               14

/* CLKGEN :: PLL_MOCA_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_PDIV_MASK                     0x00003c00
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_PDIV_SHIFT                    10
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_PDIV_DEFAULT                  0x00000003

/* CLKGEN :: PLL_MOCA_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_NDIV_INT_MASK                 0x000003ff
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_NDIV_INT_SHIFT                0
#define BCHP_CLKGEN_PLL_MOCA_PLL_DIV_NDIV_INT_DEFAULT              0x000000c8

/***************************************************************************
 *PLL_MOCA_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_reserved0_MASK               0xfffffc00
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_reserved0_SHIFT              10

/* CLKGEN :: PLL_MOCA_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000003

/* CLKGEN :: PLL_MOCA_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK       0x00000038
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT      3
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT    0x00000000

/* CLKGEN :: PLL_MOCA_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_MOCA_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000002

/***************************************************************************
 *PLL_MOCA_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_LDO_PWRON_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_MOCA_PLL_LDO_PWRON_reserved0_SHIFT         1

/* CLKGEN :: PLL_MOCA_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK      0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT     0
#define BCHP_CLKGEN_PLL_MOCA_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT   0x00000001

/***************************************************************************
 *PLL_MOCA_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_LOCK_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_MOCA_PLL_LOCK_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_MOCA_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_LOCK_STATUS_LOCK_LOST_MASK        0x00000002
#define BCHP_CLKGEN_PLL_MOCA_PLL_LOCK_STATUS_LOCK_LOST_SHIFT       1

/* CLKGEN :: PLL_MOCA_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_LOCK_STATUS_LOCK_MASK             0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_LOCK_STATUS_LOCK_SHIFT            0

/***************************************************************************
 *PLL_MOCA_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_MISC :: VCO_RANGE [31:30] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_VCO_RANGE_MASK               0xc0000000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_VCO_RANGE_SHIFT              30
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_VCO_RANGE_DEFAULT            0x00000002

/* CLKGEN :: PLL_MOCA_PLL_MISC :: VCO_FB_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_VCO_FB_DIV2_MASK             0x20000000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_VCO_FB_DIV2_SHIFT            29
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_VCO_FB_DIV2_DEFAULT          0x00000001

/* CLKGEN :: PLL_MOCA_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_UPDATE_MASK             0x10000000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_UPDATE_SHIFT            28
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_UPDATE_DEFAULT          0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_SELECT_MASK             0x0e000000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_SELECT_SHIFT            25
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_SELECT_DEFAULT          0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_RESET_MASK              0x01000000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_RESET_SHIFT             24
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_RESET_DEFAULT           0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_MODE_MASK               0x00c00000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_MODE_SHIFT              22
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_STAT_MODE_DEFAULT            0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: PWM_RATE [21:20] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PWM_RATE_MASK                0x00300000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PWM_RATE_SHIFT               20
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PWM_RATE_DEFAULT             0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: POST_CTRL_RESETB [19:18] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_POST_CTRL_RESETB_MASK        0x000c0000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_POST_CTRL_RESETB_SHIFT       18
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_POST_CTRL_RESETB_DEFAULT     0x00000002

/* CLKGEN :: PLL_MOCA_PLL_MISC :: PLLRESERVED2 [17:16] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PLLRESERVED2_MASK            0x00030000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PLLRESERVED2_SHIFT           16
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PLLRESERVED2_DEFAULT         0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: PLLRESERVED1 [15:15] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PLLRESERVED1_MASK            0x00008000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PLLRESERVED1_SHIFT           15
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_PLLRESERVED1_DEFAULT         0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: NDIV_RELOCK [14:14] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_NDIV_RELOCK_MASK             0x00004000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_NDIV_RELOCK_SHIFT            14
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_NDIV_RELOCK_DEFAULT          0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: FAST_LOCK [13:13] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_FAST_LOCK_MASK               0x00002000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_FAST_LOCK_SHIFT              13
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_FAST_LOCK_DEFAULT            0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [12:12] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK  0x00001000
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT 12
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC :: DCO_CTRL_BYPASS [11:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_DCO_CTRL_BYPASS_MASK         0x00000fff
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_DCO_CTRL_BYPASS_SHIFT        0
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT      0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_MISC2 :: PLLRESERVED0 [31:02] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC2_PLLRESERVED0_MASK           0xfffffffc
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC2_PLLRESERVED0_SHIFT          2
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC2_PLLRESERVED0_DEFAULT        0x00000000

/* CLKGEN :: PLL_MOCA_PLL_MISC2 :: LDO [01:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC2_LDO_MASK                    0x00000003
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC2_LDO_SHIFT                   0
#define BCHP_CLKGEN_PLL_MOCA_PLL_MISC2_LDO_DEFAULT                 0x00000001

/***************************************************************************
 *PLL_MOCA_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_PWRON_reserved0_MASK              0xfffffffe
#define BCHP_CLKGEN_PLL_MOCA_PLL_PWRON_reserved0_SHIFT             1

/* CLKGEN :: PLL_MOCA_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_PWRON_PWRON_PLL_MASK              0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_PWRON_PWRON_PLL_SHIFT             0
#define BCHP_CLKGEN_PLL_MOCA_PLL_PWRON_PWRON_PLL_DEFAULT           0x00000001

/***************************************************************************
 *PLL_MOCA_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_reserved0_MASK              0xfffffffc
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_reserved0_SHIFT             2

/* CLKGEN :: PLL_MOCA_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_RESETD_MASK                 0x00000002
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_RESETD_SHIFT                1
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_RESETD_DEFAULT              0x00000000

/* CLKGEN :: PLL_MOCA_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_RESETA_MASK                 0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_RESETA_SHIFT                0
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_RESETA_DEFAULT              0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_MOCA_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_STATUS_reserved0_MASK             0xfffff000
#define BCHP_CLKGEN_PLL_MOCA_PLL_STATUS_reserved0_SHIFT            12

/* CLKGEN :: PLL_MOCA_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_STATUS_TEST_STATUS_MASK           0x00000fff
#define BCHP_CLKGEN_PLL_MOCA_PLL_STATUS_TEST_STATUS_SHIFT          0

/***************************************************************************
 *PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT 11

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK 0x000001fe
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT 1
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000012

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT 11

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK 0x000001fe
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT 1
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x00000009

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT 11

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK 0x000001fe
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT 1
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x00000009

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT 11

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK 0x000001fe
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT 1
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x00000004

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4 - PLL CHANNEL control CH 4
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_reserved0_SHIFT 11

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4 :: POST_DIVIDER_HOLD_CH4 [10:10] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_MASK 0x00000400
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_SHIFT 10
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4 :: PHASE_OFFSET_CH4 [09:09] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_MASK 0x00000200
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_SHIFT 9
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4 :: MDIV_CH4 [08:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_MASK 0x000001fe
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_SHIFT 1
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_DEFAULT 0x00000006

/* CLKGEN :: PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4 :: CLOCK_DIS_CH4 [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_MASK 0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_DEFAULT 0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_reserved0_MASK             0xffffc000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_reserved0_SHIFT            14

/* CLKGEN :: PLL_NETWORK_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_PDIV_MASK                  0x00003c00
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_PDIV_SHIFT                 10
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_PDIV_DEFAULT               0x00000003

/* CLKGEN :: PLL_NETWORK_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_NDIV_INT_MASK              0x000003ff
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_NDIV_INT_SHIFT             0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_DIV_NDIV_INT_DEFAULT           0x0000007d

/***************************************************************************
 *PLL_NETWORK_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_reserved0_MASK            0xfffffc00
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_reserved0_SHIFT           10

/* CLKGEN :: PLL_NETWORK_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000003

/* CLKGEN :: PLL_NETWORK_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK    0x00000038
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT   3
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000002

/***************************************************************************
 *PLL_NETWORK_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LDO_PWRON_reserved0_MASK       0xfffffffe
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LDO_PWRON_reserved0_SHIFT      1

/* CLKGEN :: PLL_NETWORK_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK   0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT  0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT 0x00000001

/***************************************************************************
 *PLL_NETWORK_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LOCK_STATUS_reserved0_MASK     0xfffffffc
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LOCK_STATUS_reserved0_SHIFT    2

/* CLKGEN :: PLL_NETWORK_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LOCK_STATUS_LOCK_LOST_MASK     0x00000002
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LOCK_STATUS_LOCK_LOST_SHIFT    1

/* CLKGEN :: PLL_NETWORK_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LOCK_STATUS_LOCK_MASK          0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_LOCK_STATUS_LOCK_SHIFT         0

/***************************************************************************
 *PLL_NETWORK_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_MISC :: VCO_RANGE [31:30] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_VCO_RANGE_MASK            0xc0000000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_VCO_RANGE_SHIFT           30
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_VCO_RANGE_DEFAULT         0x00000002

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: VCO_FB_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_VCO_FB_DIV2_MASK          0x20000000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_VCO_FB_DIV2_SHIFT         29
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_VCO_FB_DIV2_DEFAULT       0x00000001

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_UPDATE_MASK          0x10000000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_UPDATE_SHIFT         28
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_UPDATE_DEFAULT       0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_SELECT_MASK          0x0e000000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_SELECT_SHIFT         25
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_SELECT_DEFAULT       0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_RESET_MASK           0x01000000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_RESET_SHIFT          24
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_RESET_DEFAULT        0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_MODE_MASK            0x00c00000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_MODE_SHIFT           22
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_STAT_MODE_DEFAULT         0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: PWM_RATE [21:20] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PWM_RATE_MASK             0x00300000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PWM_RATE_SHIFT            20
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PWM_RATE_DEFAULT          0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: POST_CTRL_RESETB [19:18] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_POST_CTRL_RESETB_MASK     0x000c0000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_POST_CTRL_RESETB_SHIFT    18
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_POST_CTRL_RESETB_DEFAULT  0x00000002

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: PLLRESERVED2 [17:16] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PLLRESERVED2_MASK         0x00030000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PLLRESERVED2_SHIFT        16
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PLLRESERVED2_DEFAULT      0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: PLLRESERVED1 [15:15] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PLLRESERVED1_MASK         0x00008000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PLLRESERVED1_SHIFT        15
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_PLLRESERVED1_DEFAULT      0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: NDIV_RELOCK [14:14] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_NDIV_RELOCK_MASK          0x00004000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_NDIV_RELOCK_SHIFT         14
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_NDIV_RELOCK_DEFAULT       0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: FAST_LOCK [13:13] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_FAST_LOCK_MASK            0x00002000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_FAST_LOCK_SHIFT           13
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_FAST_LOCK_DEFAULT         0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [12:12] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK 0x00001000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT 12
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC :: DCO_CTRL_BYPASS [11:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_DCO_CTRL_BYPASS_MASK      0x00000fff
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_DCO_CTRL_BYPASS_SHIFT     0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT   0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_MISC2 :: PLLRESERVED0 [31:02] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC2_PLLRESERVED0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC2_PLLRESERVED0_SHIFT       2
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC2_PLLRESERVED0_DEFAULT     0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_MISC2 :: LDO [01:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC2_LDO_MASK                 0x00000003
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC2_LDO_SHIFT                0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_MISC2_LDO_DEFAULT              0x00000001

/***************************************************************************
 *PLL_NETWORK_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_NETWORK_PLL_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_NETWORK_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_PWRON_PWRON_PLL_MASK           0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_PWRON_PWRON_PLL_SHIFT          0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_PWRON_PWRON_PLL_DEFAULT        0x00000001

/***************************************************************************
 *PLL_NETWORK_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_reserved0_MASK           0xfffffffc
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_reserved0_SHIFT          2

/* CLKGEN :: PLL_NETWORK_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_RESETD_MASK              0x00000002
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_RESETD_SHIFT             1
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_RESETD_DEFAULT           0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_RESETA_MASK              0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_RESETA_SHIFT             0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_RESETA_DEFAULT           0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_STATUS_reserved0_MASK          0xfffff000
#define BCHP_CLKGEN_PLL_NETWORK_PLL_STATUS_reserved0_SHIFT         12

/* CLKGEN :: PLL_NETWORK_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_STATUS_TEST_STATUS_MASK        0x00000fff
#define BCHP_CLKGEN_PLL_NETWORK_PLL_STATUS_TEST_STATUS_SHIFT       0

/***************************************************************************
 *PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT 11

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT 1
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000008

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT 11

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT 1
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x0000000f

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT 11

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT 1
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x00000028

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT 11

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT 1
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x00000028

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4 - PLL CHANNEL control CH 4
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_reserved0_SHIFT 11

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4 :: POST_DIVIDER_HOLD_CH4 [10:10] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_MASK 0x00000400
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_SHIFT 10
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4 :: PHASE_OFFSET_CH4 [09:09] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_MASK 0x00000200
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_SHIFT 9
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4 :: MDIV_CH4 [08:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_SHIFT 1
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_DEFAULT 0x00000064

/* CLKGEN :: PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4 :: CLOCK_DIS_CH4 [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_MASK 0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_reserved0_MASK               0xffffc000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_reserved0_SHIFT              14

/* CLKGEN :: PLL_RAAGA_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_PDIV_MASK                    0x00003c00
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_PDIV_SHIFT                   10
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_PDIV_DEFAULT                 0x00000002

/* CLKGEN :: PLL_RAAGA_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_NDIV_INT_MASK                0x000003ff
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_NDIV_INT_SHIFT               0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_DIV_NDIV_INT_DEFAULT             0x00000078

/***************************************************************************
 *PLL_RAAGA_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_reserved0_MASK              0xfffffc00
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_reserved0_SHIFT             10

/* CLKGEN :: PLL_RAAGA_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000003

/* CLKGEN :: PLL_RAAGA_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK      0x00000038
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT     3
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT   0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000002

/***************************************************************************
 *PLL_RAAGA_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LDO_PWRON_reserved0_MASK         0xfffffffe
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LDO_PWRON_reserved0_SHIFT        1

/* CLKGEN :: PLL_RAAGA_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK     0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT    0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT  0x00000001

/***************************************************************************
 *PLL_RAAGA_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LOCK_STATUS_reserved0_MASK       0xfffffffc
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LOCK_STATUS_reserved0_SHIFT      2

/* CLKGEN :: PLL_RAAGA_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LOCK_STATUS_LOCK_LOST_MASK       0x00000002
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LOCK_STATUS_LOCK_LOST_SHIFT      1

/* CLKGEN :: PLL_RAAGA_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LOCK_STATUS_LOCK_MASK            0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_LOCK_STATUS_LOCK_SHIFT           0

/***************************************************************************
 *PLL_RAAGA_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_MISC :: VCO_RANGE [31:30] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_VCO_RANGE_MASK              0xc0000000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_VCO_RANGE_SHIFT             30
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_VCO_RANGE_DEFAULT           0x00000002

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: VCO_FB_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_VCO_FB_DIV2_MASK            0x20000000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_VCO_FB_DIV2_SHIFT           29
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_VCO_FB_DIV2_DEFAULT         0x00000001

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_UPDATE_MASK            0x10000000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_UPDATE_SHIFT           28
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_UPDATE_DEFAULT         0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_SELECT_MASK            0x0e000000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_SELECT_SHIFT           25
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_SELECT_DEFAULT         0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_RESET_MASK             0x01000000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_RESET_SHIFT            24
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_RESET_DEFAULT          0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_MODE_MASK              0x00c00000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_MODE_SHIFT             22
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_STAT_MODE_DEFAULT           0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: PWM_RATE [21:20] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PWM_RATE_MASK               0x00300000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PWM_RATE_SHIFT              20
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PWM_RATE_DEFAULT            0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: POST_CTRL_RESETB [19:18] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_POST_CTRL_RESETB_MASK       0x000c0000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_POST_CTRL_RESETB_SHIFT      18
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_POST_CTRL_RESETB_DEFAULT    0x00000002

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: PLLRESERVED2 [17:16] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PLLRESERVED2_MASK           0x00030000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PLLRESERVED2_SHIFT          16
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PLLRESERVED2_DEFAULT        0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: PLLRESERVED1 [15:15] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PLLRESERVED1_MASK           0x00008000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PLLRESERVED1_SHIFT          15
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_PLLRESERVED1_DEFAULT        0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: NDIV_RELOCK [14:14] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_NDIV_RELOCK_MASK            0x00004000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_NDIV_RELOCK_SHIFT           14
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_NDIV_RELOCK_DEFAULT         0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: FAST_LOCK [13:13] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_FAST_LOCK_MASK              0x00002000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_FAST_LOCK_SHIFT             13
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_FAST_LOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [12:12] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK 0x00001000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT 12
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC :: DCO_CTRL_BYPASS [11:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_DCO_CTRL_BYPASS_MASK        0x00000fff
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_DCO_CTRL_BYPASS_SHIFT       0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT     0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_MISC2 :: PLLRESERVED0 [31:02] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC2_PLLRESERVED0_MASK          0xfffffffc
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC2_PLLRESERVED0_SHIFT         2
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC2_PLLRESERVED0_DEFAULT       0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_MISC2 :: LDO [01:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC2_LDO_MASK                   0x00000003
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC2_LDO_SHIFT                  0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_MISC2_LDO_DEFAULT                0x00000001

/***************************************************************************
 *PLL_RAAGA_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_PWRON_reserved0_MASK             0xfffffffe
#define BCHP_CLKGEN_PLL_RAAGA_PLL_PWRON_reserved0_SHIFT            1

/* CLKGEN :: PLL_RAAGA_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_PWRON_PWRON_PLL_MASK             0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_PWRON_PWRON_PLL_SHIFT            0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_PWRON_PWRON_PLL_DEFAULT          0x00000001

/***************************************************************************
 *PLL_RAAGA_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_reserved0_MASK             0xfffffffc
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_reserved0_SHIFT            2

/* CLKGEN :: PLL_RAAGA_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_RESETD_MASK                0x00000002
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_RESETD_SHIFT               1
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_RESETD_DEFAULT             0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_RESETA_MASK                0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_RESETA_SHIFT               0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_RESETA_DEFAULT             0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_RAAGA_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_STATUS_reserved0_MASK            0xfffff000
#define BCHP_CLKGEN_PLL_RAAGA_PLL_STATUS_reserved0_SHIFT           12

/* CLKGEN :: PLL_RAAGA_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_STATUS_TEST_STATUS_MASK          0x00000fff
#define BCHP_CLKGEN_PLL_RAAGA_PLL_STATUS_TEST_STATUS_SHIFT         0

/***************************************************************************
 *PLL_SC0_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT  11

/* CLKGEN :: PLL_SC0_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC0_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC0_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT   1
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000030

/* CLKGEN :: PLL_SC0_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_SC0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SC0_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_reserved0_MASK                 0xffffc000
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_reserved0_SHIFT                14

/* CLKGEN :: PLL_SC0_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_PDIV_MASK                      0x00003c00
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_PDIV_SHIFT                     10
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_PDIV_DEFAULT                   0x00000002

/* CLKGEN :: PLL_SC0_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_NDIV_INT_MASK                  0x000003ff
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_NDIV_INT_SHIFT                 0
#define BCHP_CLKGEN_PLL_SC0_PLL_DIV_NDIV_INT_DEFAULT               0x00000030

/***************************************************************************
 *PLL_SC0_PLL_FRAC - Fractional
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_FRAC :: reserved0 [31:20] */
#define BCHP_CLKGEN_PLL_SC0_PLL_FRAC_reserved0_MASK                0xfff00000
#define BCHP_CLKGEN_PLL_SC0_PLL_FRAC_reserved0_SHIFT               20

/* CLKGEN :: PLL_SC0_PLL_FRAC :: FRAC_CONTROL [19:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_FRAC_FRAC_CONTROL_MASK             0x000fffff
#define BCHP_CLKGEN_PLL_SC0_PLL_FRAC_FRAC_CONTROL_SHIFT            0
#define BCHP_CLKGEN_PLL_SC0_PLL_FRAC_FRAC_CONTROL_DEFAULT          0x00000000

/***************************************************************************
 *PLL_SC0_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_reserved0_MASK                0xfffffc00
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_reserved0_SHIFT               10

/* CLKGEN :: PLL_SC0_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000005

/* CLKGEN :: PLL_SC0_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK        0x00000038
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT       3
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT     0x00000000

/* CLKGEN :: PLL_SC0_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_SC0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000002

/***************************************************************************
 *PLL_SC0_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SC0_PLL_LDO_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_SC0_PLL_LDO_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_SC0_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_SC0_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT      0
#define BCHP_CLKGEN_PLL_SC0_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT    0x00000001

/***************************************************************************
 *PLL_SC0_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SC0_PLL_LOCK_STATUS_reserved0_MASK         0xfffffffc
#define BCHP_CLKGEN_PLL_SC0_PLL_LOCK_STATUS_reserved0_SHIFT        2

/* CLKGEN :: PLL_SC0_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_SC0_PLL_LOCK_STATUS_LOCK_LOST_MASK         0x00000002
#define BCHP_CLKGEN_PLL_SC0_PLL_LOCK_STATUS_LOCK_LOST_SHIFT        1

/* CLKGEN :: PLL_SC0_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_LOCK_STATUS_LOCK_MASK              0x00000001
#define BCHP_CLKGEN_PLL_SC0_PLL_LOCK_STATUS_LOCK_SHIFT             0

/***************************************************************************
 *PLL_SC0_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_MISC :: VCO_RANGE [31:30] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_VCO_RANGE_MASK                0xc0000000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_VCO_RANGE_SHIFT               30
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_VCO_RANGE_DEFAULT             0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: VCO_FB_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_VCO_FB_DIV2_MASK              0x20000000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_VCO_FB_DIV2_SHIFT             29
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_VCO_FB_DIV2_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_UPDATE_MASK              0x10000000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_UPDATE_SHIFT             28
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_UPDATE_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_SELECT_MASK              0x0e000000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_SELECT_SHIFT             25
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_SELECT_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_RESET_MASK               0x01000000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_RESET_SHIFT              24
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_RESET_DEFAULT            0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_MODE_MASK                0x00c00000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_MODE_SHIFT               22
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_STAT_MODE_DEFAULT             0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: PWM_RATE [21:20] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PWM_RATE_MASK                 0x00300000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PWM_RATE_SHIFT                20
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PWM_RATE_DEFAULT              0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: POST_CTRL_RESETB [19:18] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_POST_CTRL_RESETB_MASK         0x000c0000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_POST_CTRL_RESETB_SHIFT        18
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_POST_CTRL_RESETB_DEFAULT      0x00000002

/* CLKGEN :: PLL_SC0_PLL_MISC :: PLLRESERVED2 [17:16] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PLLRESERVED2_MASK             0x00030000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PLLRESERVED2_SHIFT            16
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PLLRESERVED2_DEFAULT          0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: PLLRESERVED1 [15:15] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PLLRESERVED1_MASK             0x00008000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PLLRESERVED1_SHIFT            15
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_PLLRESERVED1_DEFAULT          0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: NDIV_RELOCK [14:14] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_NDIV_RELOCK_MASK              0x00004000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_NDIV_RELOCK_SHIFT             14
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_NDIV_RELOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: FAST_LOCK [13:13] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_FAST_LOCK_MASK                0x00002000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_FAST_LOCK_SHIFT               13
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_FAST_LOCK_DEFAULT             0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [12:12] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK   0x00001000
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT  12
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC :: DCO_CTRL_BYPASS [11:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_DCO_CTRL_BYPASS_MASK          0x00000fff
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_DCO_CTRL_BYPASS_SHIFT         0
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT       0x00000000

/***************************************************************************
 *PLL_SC0_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_MISC2 :: PLLRESERVED0 [31:02] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC2_PLLRESERVED0_MASK            0xfffffffc
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC2_PLLRESERVED0_SHIFT           2
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC2_PLLRESERVED0_DEFAULT         0x00000000

/* CLKGEN :: PLL_SC0_PLL_MISC2 :: LDO [01:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC2_LDO_MASK                     0x00000003
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC2_LDO_SHIFT                    0
#define BCHP_CLKGEN_PLL_SC0_PLL_MISC2_LDO_DEFAULT                  0x00000001

/***************************************************************************
 *PLL_SC0_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SC0_PLL_PWRON_reserved0_MASK               0xfffffffe
#define BCHP_CLKGEN_PLL_SC0_PLL_PWRON_reserved0_SHIFT              1

/* CLKGEN :: PLL_SC0_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_PWRON_PWRON_PLL_MASK               0x00000001
#define BCHP_CLKGEN_PLL_SC0_PLL_PWRON_PWRON_PLL_SHIFT              0
#define BCHP_CLKGEN_PLL_SC0_PLL_PWRON_PWRON_PLL_DEFAULT            0x00000001

/***************************************************************************
 *PLL_SC0_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_reserved0_MASK               0xfffffffc
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_reserved0_SHIFT              2

/* CLKGEN :: PLL_SC0_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_RESETD_MASK                  0x00000002
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_RESETD_SHIFT                 1
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_RESETD_DEFAULT               0x00000000

/* CLKGEN :: PLL_SC0_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_RESETA_MASK                  0x00000001
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_RESETA_SHIFT                 0
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_RESETA_DEFAULT               0x00000000

/***************************************************************************
 *PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SC0_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_SC0_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC0_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_SC0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SC0_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_SC0_PLL_STATUS_reserved0_MASK              0xfffff000
#define BCHP_CLKGEN_PLL_SC0_PLL_STATUS_reserved0_SHIFT             12

/* CLKGEN :: PLL_SC0_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_STATUS_TEST_STATUS_MASK            0x00000fff
#define BCHP_CLKGEN_PLL_SC0_PLL_STATUS_TEST_STATUS_SHIFT           0

/***************************************************************************
 *PLL_SC1_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK   0xfffff800
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT  11

/* CLKGEN :: PLL_SC1_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC1_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC1_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK    0x000001fe
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT   1
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000030

/* CLKGEN :: PLL_SC1_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_SC1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SC1_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_reserved0_MASK                 0xffffc000
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_reserved0_SHIFT                14

/* CLKGEN :: PLL_SC1_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_PDIV_MASK                      0x00003c00
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_PDIV_SHIFT                     10
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_PDIV_DEFAULT                   0x00000002

/* CLKGEN :: PLL_SC1_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_NDIV_INT_MASK                  0x000003ff
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_NDIV_INT_SHIFT                 0
#define BCHP_CLKGEN_PLL_SC1_PLL_DIV_NDIV_INT_DEFAULT               0x00000030

/***************************************************************************
 *PLL_SC1_PLL_FRAC - Fractional
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_FRAC :: reserved0 [31:20] */
#define BCHP_CLKGEN_PLL_SC1_PLL_FRAC_reserved0_MASK                0xfff00000
#define BCHP_CLKGEN_PLL_SC1_PLL_FRAC_reserved0_SHIFT               20

/* CLKGEN :: PLL_SC1_PLL_FRAC :: FRAC_CONTROL [19:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_FRAC_FRAC_CONTROL_MASK             0x000fffff
#define BCHP_CLKGEN_PLL_SC1_PLL_FRAC_FRAC_CONTROL_SHIFT            0
#define BCHP_CLKGEN_PLL_SC1_PLL_FRAC_FRAC_CONTROL_DEFAULT          0x00000000

/***************************************************************************
 *PLL_SC1_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_reserved0_MASK                0xfffffc00
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_reserved0_SHIFT               10

/* CLKGEN :: PLL_SC1_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000005

/* CLKGEN :: PLL_SC1_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK        0x00000038
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT       3
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT     0x00000000

/* CLKGEN :: PLL_SC1_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_SC1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000002

/***************************************************************************
 *PLL_SC1_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SC1_PLL_LDO_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_SC1_PLL_LDO_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_SC1_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_SC1_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT      0
#define BCHP_CLKGEN_PLL_SC1_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT    0x00000001

/***************************************************************************
 *PLL_SC1_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SC1_PLL_LOCK_STATUS_reserved0_MASK         0xfffffffc
#define BCHP_CLKGEN_PLL_SC1_PLL_LOCK_STATUS_reserved0_SHIFT        2

/* CLKGEN :: PLL_SC1_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_SC1_PLL_LOCK_STATUS_LOCK_LOST_MASK         0x00000002
#define BCHP_CLKGEN_PLL_SC1_PLL_LOCK_STATUS_LOCK_LOST_SHIFT        1

/* CLKGEN :: PLL_SC1_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_LOCK_STATUS_LOCK_MASK              0x00000001
#define BCHP_CLKGEN_PLL_SC1_PLL_LOCK_STATUS_LOCK_SHIFT             0

/***************************************************************************
 *PLL_SC1_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_MISC :: VCO_RANGE [31:30] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_VCO_RANGE_MASK                0xc0000000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_VCO_RANGE_SHIFT               30
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_VCO_RANGE_DEFAULT             0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: VCO_FB_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_VCO_FB_DIV2_MASK              0x20000000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_VCO_FB_DIV2_SHIFT             29
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_VCO_FB_DIV2_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_UPDATE_MASK              0x10000000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_UPDATE_SHIFT             28
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_UPDATE_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_SELECT_MASK              0x0e000000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_SELECT_SHIFT             25
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_SELECT_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_RESET_MASK               0x01000000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_RESET_SHIFT              24
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_RESET_DEFAULT            0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_MODE_MASK                0x00c00000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_MODE_SHIFT               22
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_STAT_MODE_DEFAULT             0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: PWM_RATE [21:20] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PWM_RATE_MASK                 0x00300000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PWM_RATE_SHIFT                20
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PWM_RATE_DEFAULT              0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: POST_CTRL_RESETB [19:18] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_POST_CTRL_RESETB_MASK         0x000c0000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_POST_CTRL_RESETB_SHIFT        18
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_POST_CTRL_RESETB_DEFAULT      0x00000002

/* CLKGEN :: PLL_SC1_PLL_MISC :: PLLRESERVED2 [17:16] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PLLRESERVED2_MASK             0x00030000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PLLRESERVED2_SHIFT            16
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PLLRESERVED2_DEFAULT          0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: PLLRESERVED1 [15:15] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PLLRESERVED1_MASK             0x00008000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PLLRESERVED1_SHIFT            15
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_PLLRESERVED1_DEFAULT          0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: NDIV_RELOCK [14:14] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_NDIV_RELOCK_MASK              0x00004000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_NDIV_RELOCK_SHIFT             14
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_NDIV_RELOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: FAST_LOCK [13:13] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_FAST_LOCK_MASK                0x00002000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_FAST_LOCK_SHIFT               13
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_FAST_LOCK_DEFAULT             0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [12:12] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK   0x00001000
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT  12
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC :: DCO_CTRL_BYPASS [11:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_DCO_CTRL_BYPASS_MASK          0x00000fff
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_DCO_CTRL_BYPASS_SHIFT         0
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT       0x00000000

/***************************************************************************
 *PLL_SC1_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_MISC2 :: PLLRESERVED0 [31:02] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC2_PLLRESERVED0_MASK            0xfffffffc
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC2_PLLRESERVED0_SHIFT           2
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC2_PLLRESERVED0_DEFAULT         0x00000000

/* CLKGEN :: PLL_SC1_PLL_MISC2 :: LDO [01:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC2_LDO_MASK                     0x00000003
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC2_LDO_SHIFT                    0
#define BCHP_CLKGEN_PLL_SC1_PLL_MISC2_LDO_DEFAULT                  0x00000001

/***************************************************************************
 *PLL_SC1_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SC1_PLL_PWRON_reserved0_MASK               0xfffffffe
#define BCHP_CLKGEN_PLL_SC1_PLL_PWRON_reserved0_SHIFT              1

/* CLKGEN :: PLL_SC1_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_PWRON_PWRON_PLL_MASK               0x00000001
#define BCHP_CLKGEN_PLL_SC1_PLL_PWRON_PWRON_PLL_SHIFT              0
#define BCHP_CLKGEN_PLL_SC1_PLL_PWRON_PWRON_PLL_DEFAULT            0x00000001

/***************************************************************************
 *PLL_SC1_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_reserved0_MASK               0xfffffffc
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_reserved0_SHIFT              2

/* CLKGEN :: PLL_SC1_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_RESETD_MASK                  0x00000002
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_RESETD_SHIFT                 1
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_RESETD_DEFAULT               0x00000000

/* CLKGEN :: PLL_SC1_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_RESETA_MASK                  0x00000001
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_RESETA_SHIFT                 0
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_RESETA_DEFAULT               0x00000000

/***************************************************************************
 *PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SC1_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_SC1_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC1_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_SC1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SC1_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_SC1_PLL_STATUS_reserved0_MASK              0xfffff000
#define BCHP_CLKGEN_PLL_SC1_PLL_STATUS_reserved0_SHIFT             12

/* CLKGEN :: PLL_SC1_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_STATUS_TEST_STATUS_MASK            0x00000fff
#define BCHP_CLKGEN_PLL_SC1_PLL_STATUS_TEST_STATUS_SHIFT           0

/***************************************************************************
 *PLL_SYS0_PLL_BG_PWRON - Bandgap Power on
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_BG_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_BG_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_SYS0_PLL_BG_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_SYS0_PLL_BG_PWRON :: BG_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_BG_PWRON_BG_PWRON_PLL_MASK        0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_BG_PWRON_BG_PWRON_PLL_SHIFT       0
#define BCHP_CLKGEN_PLL_SYS0_PLL_BG_PWRON_BG_PWRON_PLL_DEFAULT     0x00000001

/***************************************************************************
 *PLL_SYS0_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000012

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x00000024

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x0000000c

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x00000090

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_CHANNEL_CTRL_CH_4 - PLL CHANNEL control CH 4
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_4 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_4 :: POST_DIVIDER_HOLD_CH4 [10:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_4 :: PHASE_OFFSET_CH4 [09:09] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_4 :: MDIV_CH4 [08:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_DEFAULT 0x00000009

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_4 :: CLOCK_DIS_CH4 [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_CHANNEL_CTRL_CH_5 - PLL CHANNEL control CH 5
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_5 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_5 :: POST_DIVIDER_HOLD_CH5 [10:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_5 :: PHASE_OFFSET_CH5 [09:09] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_5 :: MDIV_CH5 [08:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_DEFAULT 0x00000027

/* CLKGEN :: PLL_SYS0_PLL_CHANNEL_CTRL_CH_5 :: CLOCK_DIS_CH5 [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_reserved0_MASK                0xffffc000
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_reserved0_SHIFT               14

/* CLKGEN :: PLL_SYS0_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_PDIV_MASK                     0x00003c00
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_PDIV_SHIFT                    10
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_PDIV_DEFAULT                  0x00000002

/* CLKGEN :: PLL_SYS0_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_NDIV_INT_MASK                 0x000003ff
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_NDIV_INT_SHIFT                0
#define BCHP_CLKGEN_PLL_SYS0_PLL_DIV_NDIV_INT_DEFAULT              0x00000090

/***************************************************************************
 *PLL_SYS0_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_reserved0_MASK               0xfffffc00
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_reserved0_SHIFT              10

/* CLKGEN :: PLL_SYS0_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000007

/* CLKGEN :: PLL_SYS0_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK       0x00000038
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT      3
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT    0x00000000

/* CLKGEN :: PLL_SYS0_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000003

/***************************************************************************
 *PLL_SYS0_PLL_HOLD_CH_ALL - Hold PLL all channels
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_HOLD_CH_ALL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_HOLD_CH_ALL_reserved0_MASK        0xfffffffe
#define BCHP_CLKGEN_PLL_SYS0_PLL_HOLD_CH_ALL_reserved0_SHIFT       1

/* CLKGEN :: PLL_SYS0_PLL_HOLD_CH_ALL :: HOLD_CH_ALL [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_HOLD_CH_ALL_HOLD_CH_ALL_MASK      0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_HOLD_CH_ALL_HOLD_CH_ALL_SHIFT     0
#define BCHP_CLKGEN_PLL_SYS0_PLL_HOLD_CH_ALL_HOLD_CH_ALL_DEFAULT   0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_LDO_CTRL - Ldo voltage control
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_LDO_CTRL :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_CTRL_reserved0_MASK           0xffff0000
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_CTRL_reserved0_SHIFT          16

/* CLKGEN :: PLL_SYS0_PLL_LDO_CTRL :: LDO_CTRL [15:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_CTRL_LDO_CTRL_MASK            0x0000ffff
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_CTRL_LDO_CTRL_SHIFT           0
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_CTRL_LDO_CTRL_DEFAULT         0x00005005

/***************************************************************************
 *PLL_SYS0_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_PWRON_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_PWRON_reserved0_SHIFT         1

/* CLKGEN :: PLL_SYS0_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK      0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT     0
#define BCHP_CLKGEN_PLL_SYS0_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT   0x00000001

/***************************************************************************
 *PLL_SYS0_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LOCK_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_SYS0_PLL_LOCK_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_SYS0_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LOCK_STATUS_LOCK_LOST_MASK        0x00000002
#define BCHP_CLKGEN_PLL_SYS0_PLL_LOCK_STATUS_LOCK_LOST_SHIFT       1

/* CLKGEN :: PLL_SYS0_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_LOCK_STATUS_LOCK_MASK             0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_LOCK_STATUS_LOCK_SHIFT            0

/***************************************************************************
 *PLL_SYS0_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_MISC :: VCO_RANGE_LOW [31:31] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_RANGE_LOW_MASK           0x80000000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_RANGE_LOW_SHIFT          31
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_RANGE_LOW_DEFAULT        0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: VCO_RANGE_HIGH [30:30] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_RANGE_HIGH_MASK          0x40000000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_RANGE_HIGH_SHIFT         30
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_RANGE_HIGH_DEFAULT       0x00000001

/* CLKGEN :: PLL_SYS0_PLL_MISC :: VCO_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_DIV2_MASK                0x20000000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_DIV2_SHIFT               29
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_VCO_DIV2_DEFAULT             0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_UPDATE_MASK             0x10000000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_UPDATE_SHIFT            28
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_UPDATE_DEFAULT          0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_SELECT_MASK             0x0e000000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_SELECT_SHIFT            25
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_SELECT_DEFAULT          0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_RESET_MASK              0x01000000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_RESET_SHIFT             24
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_RESET_DEFAULT           0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_MODE_MASK               0x00c00000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_MODE_SHIFT              22
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_STAT_MODE_DEFAULT            0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: REF_ALT_OFFS [21:21] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_REF_ALT_OFFS_MASK            0x00200000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_REF_ALT_OFFS_SHIFT           21
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_REF_ALT_OFFS_DEFAULT         0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: PWM_RATE [20:19] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_PWM_RATE_MASK                0x00180000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_PWM_RATE_SHIFT               19
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_PWM_RATE_DEFAULT             0x00000001

/* CLKGEN :: PLL_SYS0_PLL_MISC :: POST_CTRL_RESETB [18:17] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_POST_CTRL_RESETB_MASK        0x00060000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_POST_CTRL_RESETB_SHIFT       17
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_POST_CTRL_RESETB_DEFAULT     0x00000003

/* CLKGEN :: PLL_SYS0_PLL_MISC :: NDIV_RELOCK [16:16] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_NDIV_RELOCK_MASK             0x00010000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_NDIV_RELOCK_SHIFT            16
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_NDIV_RELOCK_DEFAULT          0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: FAST_LOCK [15:15] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_FAST_LOCK_MASK               0x00008000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_FAST_LOCK_SHIFT              15
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_FAST_LOCK_DEFAULT            0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: DITHER_DISABLE [14:14] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DITHER_DISABLE_MASK          0x00004000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DITHER_DISABLE_SHIFT         14
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DITHER_DISABLE_DEFAULT       0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [13:13] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK  0x00002000
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT 13
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: DCO_CTRL_BYPASS [12:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DCO_CTRL_BYPASS_MASK         0x00001ffe
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DCO_CTRL_BYPASS_SHIFT        1
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT      0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC :: AUX_CTRL [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_AUX_CTRL_MASK                0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_AUX_CTRL_SHIFT               0
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC_AUX_CTRL_DEFAULT             0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_MISC2 :: PLLRESERVED0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC2_PLLRESERVED0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC2_PLLRESERVED0_SHIFT          1
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC2_PLLRESERVED0_DEFAULT        0x00000000

/* CLKGEN :: PLL_SYS0_PLL_MISC2 :: DIG_INPUT_SEL [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC2_DIG_INPUT_SEL_MASK          0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC2_DIG_INPUT_SEL_SHIFT         0
#define BCHP_CLKGEN_PLL_SYS0_PLL_MISC2_DIG_INPUT_SEL_DEFAULT       0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_PWRON_reserved0_MASK              0xfffffffe
#define BCHP_CLKGEN_PLL_SYS0_PLL_PWRON_reserved0_SHIFT             1

/* CLKGEN :: PLL_SYS0_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_PWRON_PWRON_PLL_MASK              0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_PWRON_PWRON_PLL_SHIFT             0
#define BCHP_CLKGEN_PLL_SYS0_PLL_PWRON_PWRON_PLL_DEFAULT           0x00000001

/***************************************************************************
 *PLL_SYS0_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_RESET :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_RESET_reserved0_MASK              0xfffffffe
#define BCHP_CLKGEN_PLL_SYS0_PLL_RESET_reserved0_SHIFT             1

/* CLKGEN :: PLL_SYS0_PLL_RESET :: RESETD [00:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_RESET_RESETD_MASK                 0x00000001
#define BCHP_CLKGEN_PLL_SYS0_PLL_RESET_RESETD_SHIFT                0
#define BCHP_CLKGEN_PLL_SYS0_PLL_RESET_RESETD_DEFAULT              0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_STATUS_reserved0_MASK             0xfffff000
#define BCHP_CLKGEN_PLL_SYS0_PLL_STATUS_reserved0_SHIFT            12

/* CLKGEN :: PLL_SYS0_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_SYS0_PLL_STATUS_TEST_STATUS_MASK           0x00000fff
#define BCHP_CLKGEN_PLL_SYS0_PLL_STATUS_TEST_STATUS_SHIFT          0

/***************************************************************************
 *PLL_SYS1_PLL_BG_PWRON - Bandgap Power on
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_BG_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_BG_PWRON_reserved0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_SYS1_PLL_BG_PWRON_reserved0_SHIFT          1

/* CLKGEN :: PLL_SYS1_PLL_BG_PWRON :: BG_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_BG_PWRON_BG_PWRON_PLL_MASK        0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_BG_PWRON_BG_PWRON_PLL_SHIFT       0
#define BCHP_CLKGEN_PLL_SYS1_PLL_BG_PWRON_BG_PWRON_PLL_DEFAULT     0x00000001

/***************************************************************************
 *PLL_SYS1_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000008

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x0000000c

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x0000000a

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_CHANNEL_CTRL_CH_3 - PLL CHANNEL control CH 3
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_3 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_3 :: POST_DIVIDER_HOLD_CH3 [10:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_POST_DIVIDER_HOLD_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_3 :: PHASE_OFFSET_CH3 [09:09] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_PHASE_OFFSET_CH3_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_3 :: MDIV_CH3 [08:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_MDIV_CH3_DEFAULT 0x0000000f

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_3 :: CLOCK_DIS_CH3 [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_3_CLOCK_DIS_CH3_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_CHANNEL_CTRL_CH_4 - PLL CHANNEL control CH 4
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_4 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_4 :: POST_DIVIDER_HOLD_CH4 [10:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_POST_DIVIDER_HOLD_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_4 :: PHASE_OFFSET_CH4 [09:09] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_PHASE_OFFSET_CH4_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_4 :: MDIV_CH4 [08:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_MDIV_CH4_DEFAULT 0x00000005

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_4 :: CLOCK_DIS_CH4 [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_4_CLOCK_DIS_CH4_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_CHANNEL_CTRL_CH_5 - PLL CHANNEL control CH 5
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_5 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_reserved0_MASK  0xfffff800
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_reserved0_SHIFT 11

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_5 :: POST_DIVIDER_HOLD_CH5 [10:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_MASK 0x00000400
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_SHIFT 10
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_POST_DIVIDER_HOLD_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_5 :: PHASE_OFFSET_CH5 [09:09] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_PHASE_OFFSET_CH5_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_5 :: MDIV_CH5 [08:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_MASK   0x000001fe
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_SHIFT  1
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_MDIV_CH5_DEFAULT 0x0000000f

/* CLKGEN :: PLL_SYS1_PLL_CHANNEL_CTRL_CH_5 :: CLOCK_DIS_CH5 [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_CHANNEL_CTRL_CH_5_CLOCK_DIS_CH5_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_reserved0_MASK                0xffffc000
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_reserved0_SHIFT               14

/* CLKGEN :: PLL_SYS1_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_PDIV_MASK                     0x00003c00
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_PDIV_SHIFT                    10
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_PDIV_DEFAULT                  0x00000002

/* CLKGEN :: PLL_SYS1_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_NDIV_INT_MASK                 0x000003ff
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_NDIV_INT_SHIFT                0
#define BCHP_CLKGEN_PLL_SYS1_PLL_DIV_NDIV_INT_DEFAULT              0x00000078

/***************************************************************************
 *PLL_SYS1_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_reserved0_MASK               0xfffffc00
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_reserved0_SHIFT              10

/* CLKGEN :: PLL_SYS1_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000007

/* CLKGEN :: PLL_SYS1_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK       0x00000038
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT      3
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT    0x00000000

/* CLKGEN :: PLL_SYS1_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000003

/***************************************************************************
 *PLL_SYS1_PLL_HOLD_CH_ALL - Hold PLL all channels
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_HOLD_CH_ALL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_HOLD_CH_ALL_reserved0_MASK        0xfffffffe
#define BCHP_CLKGEN_PLL_SYS1_PLL_HOLD_CH_ALL_reserved0_SHIFT       1

/* CLKGEN :: PLL_SYS1_PLL_HOLD_CH_ALL :: HOLD_CH_ALL [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_HOLD_CH_ALL_HOLD_CH_ALL_MASK      0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_HOLD_CH_ALL_HOLD_CH_ALL_SHIFT     0
#define BCHP_CLKGEN_PLL_SYS1_PLL_HOLD_CH_ALL_HOLD_CH_ALL_DEFAULT   0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_LDO_CTRL - Ldo voltage control
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_LDO_CTRL :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_CTRL_reserved0_MASK           0xffff0000
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_CTRL_reserved0_SHIFT          16

/* CLKGEN :: PLL_SYS1_PLL_LDO_CTRL :: LDO_CTRL [15:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_CTRL_LDO_CTRL_MASK            0x0000ffff
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_CTRL_LDO_CTRL_SHIFT           0
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_CTRL_LDO_CTRL_DEFAULT         0x00005005

/***************************************************************************
 *PLL_SYS1_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_PWRON_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_PWRON_reserved0_SHIFT         1

/* CLKGEN :: PLL_SYS1_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK      0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT     0
#define BCHP_CLKGEN_PLL_SYS1_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT   0x00000001

/***************************************************************************
 *PLL_SYS1_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LOCK_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_SYS1_PLL_LOCK_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_SYS1_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LOCK_STATUS_LOCK_LOST_MASK        0x00000002
#define BCHP_CLKGEN_PLL_SYS1_PLL_LOCK_STATUS_LOCK_LOST_SHIFT       1

/* CLKGEN :: PLL_SYS1_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_LOCK_STATUS_LOCK_MASK             0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_LOCK_STATUS_LOCK_SHIFT            0

/***************************************************************************
 *PLL_SYS1_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_MISC :: VCO_RANGE_LOW [31:31] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_RANGE_LOW_MASK           0x80000000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_RANGE_LOW_SHIFT          31
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_RANGE_LOW_DEFAULT        0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: VCO_RANGE_HIGH [30:30] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_RANGE_HIGH_MASK          0x40000000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_RANGE_HIGH_SHIFT         30
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_RANGE_HIGH_DEFAULT       0x00000001

/* CLKGEN :: PLL_SYS1_PLL_MISC :: VCO_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_DIV2_MASK                0x20000000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_DIV2_SHIFT               29
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_VCO_DIV2_DEFAULT             0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_UPDATE_MASK             0x10000000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_UPDATE_SHIFT            28
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_UPDATE_DEFAULT          0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_SELECT_MASK             0x0e000000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_SELECT_SHIFT            25
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_SELECT_DEFAULT          0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_RESET_MASK              0x01000000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_RESET_SHIFT             24
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_RESET_DEFAULT           0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_MODE_MASK               0x00c00000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_MODE_SHIFT              22
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_STAT_MODE_DEFAULT            0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: REF_ALT_OFFS [21:21] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_REF_ALT_OFFS_MASK            0x00200000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_REF_ALT_OFFS_SHIFT           21
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_REF_ALT_OFFS_DEFAULT         0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: PWM_RATE [20:19] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_PWM_RATE_MASK                0x00180000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_PWM_RATE_SHIFT               19
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_PWM_RATE_DEFAULT             0x00000001

/* CLKGEN :: PLL_SYS1_PLL_MISC :: POST_CTRL_RESETB [18:17] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_POST_CTRL_RESETB_MASK        0x00060000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_POST_CTRL_RESETB_SHIFT       17
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_POST_CTRL_RESETB_DEFAULT     0x00000003

/* CLKGEN :: PLL_SYS1_PLL_MISC :: NDIV_RELOCK [16:16] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_NDIV_RELOCK_MASK             0x00010000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_NDIV_RELOCK_SHIFT            16
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_NDIV_RELOCK_DEFAULT          0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: FAST_LOCK [15:15] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_FAST_LOCK_MASK               0x00008000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_FAST_LOCK_SHIFT              15
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_FAST_LOCK_DEFAULT            0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: DITHER_DISABLE [14:14] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DITHER_DISABLE_MASK          0x00004000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DITHER_DISABLE_SHIFT         14
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DITHER_DISABLE_DEFAULT       0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [13:13] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK  0x00002000
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT 13
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: DCO_CTRL_BYPASS [12:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DCO_CTRL_BYPASS_MASK         0x00001ffe
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DCO_CTRL_BYPASS_SHIFT        1
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT      0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC :: AUX_CTRL [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_AUX_CTRL_MASK                0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_AUX_CTRL_SHIFT               0
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC_AUX_CTRL_DEFAULT             0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_MISC2 :: PLLRESERVED0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC2_PLLRESERVED0_MASK           0xfffffffe
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC2_PLLRESERVED0_SHIFT          1
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC2_PLLRESERVED0_DEFAULT        0x00000000

/* CLKGEN :: PLL_SYS1_PLL_MISC2 :: DIG_INPUT_SEL [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC2_DIG_INPUT_SEL_MASK          0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC2_DIG_INPUT_SEL_SHIFT         0
#define BCHP_CLKGEN_PLL_SYS1_PLL_MISC2_DIG_INPUT_SEL_DEFAULT       0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_PWRON_reserved0_MASK              0xfffffffe
#define BCHP_CLKGEN_PLL_SYS1_PLL_PWRON_reserved0_SHIFT             1

/* CLKGEN :: PLL_SYS1_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_PWRON_PWRON_PLL_MASK              0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_PWRON_PWRON_PLL_SHIFT             0
#define BCHP_CLKGEN_PLL_SYS1_PLL_PWRON_PWRON_PLL_DEFAULT           0x00000001

/***************************************************************************
 *PLL_SYS1_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_RESET :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_RESET_reserved0_MASK              0xfffffffe
#define BCHP_CLKGEN_PLL_SYS1_PLL_RESET_reserved0_SHIFT             1

/* CLKGEN :: PLL_SYS1_PLL_RESET :: RESETD [00:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_RESET_RESETD_MASK                 0x00000001
#define BCHP_CLKGEN_PLL_SYS1_PLL_RESET_RESETD_SHIFT                0
#define BCHP_CLKGEN_PLL_SYS1_PLL_RESET_RESETD_DEFAULT              0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_SYS1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS1_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_STATUS_reserved0_MASK             0xfffff000
#define BCHP_CLKGEN_PLL_SYS1_PLL_STATUS_reserved0_SHIFT            12

/* CLKGEN :: PLL_SYS1_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_SYS1_PLL_STATUS_TEST_STATUS_MASK           0x00000fff
#define BCHP_CLKGEN_PLL_SYS1_PLL_STATUS_TEST_STATUS_SHIFT          0

/***************************************************************************
 *PLL_VCXO0_PLL_BG_PWRON - Bandgap Power on
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_BG_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_BG_PWRON_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_BG_PWRON_reserved0_SHIFT         1

/* CLKGEN :: PLL_VCXO0_PLL_BG_PWRON :: BG_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_BG_PWRON_BG_PWRON_PLL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_BG_PWRON_BG_PWRON_PLL_SHIFT      0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_BG_PWRON_BG_PWRON_PLL_DEFAULT    0x00000001

/***************************************************************************
 *PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT 11

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT 1
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000040

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT 11

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT 1
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x000000fa

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT 11

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT 1
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x0000007d

/* CLKGEN :: PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_reserved0_MASK               0xffffc000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_reserved0_SHIFT              14

/* CLKGEN :: PLL_VCXO0_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_PDIV_MASK                    0x00003c00
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_PDIV_SHIFT                   10
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_PDIV_DEFAULT                 0x00000002

/* CLKGEN :: PLL_VCXO0_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_NDIV_INT_MASK                0x000003ff
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_NDIV_INT_SHIFT               0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_DIV_NDIV_INT_DEFAULT             0x00000040

/***************************************************************************
 *PLL_VCXO0_PLL_FRAC - Fractional
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_FRAC :: reserved0 [31:20] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_FRAC_reserved0_MASK              0xfff00000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_FRAC_reserved0_SHIFT             20

/* CLKGEN :: PLL_VCXO0_PLL_FRAC :: FRAC_CONTROL [19:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_FRAC_FRAC_CONTROL_MASK           0x000fffff
#define BCHP_CLKGEN_PLL_VCXO0_PLL_FRAC_FRAC_CONTROL_SHIFT          0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_FRAC_FRAC_CONTROL_DEFAULT        0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_reserved0_MASK              0xfffffc00
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_reserved0_SHIFT             10

/* CLKGEN :: PLL_VCXO0_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000007

/* CLKGEN :: PLL_VCXO0_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK      0x00000038
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT     3
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT   0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000004

/***************************************************************************
 *PLL_VCXO0_PLL_HOLD_CH_ALL - Hold PLL all channels
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_HOLD_CH_ALL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_HOLD_CH_ALL_reserved0_MASK       0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_HOLD_CH_ALL_reserved0_SHIFT      1

/* CLKGEN :: PLL_VCXO0_PLL_HOLD_CH_ALL :: HOLD_CH_ALL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_HOLD_CH_ALL_HOLD_CH_ALL_MASK     0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_HOLD_CH_ALL_HOLD_CH_ALL_SHIFT    0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_HOLD_CH_ALL_HOLD_CH_ALL_DEFAULT  0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_LDO_CTRL - Ldo voltage control
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_LDO_CTRL :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_CTRL_reserved0_MASK          0xffff0000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_CTRL_reserved0_SHIFT         16

/* CLKGEN :: PLL_VCXO0_PLL_LDO_CTRL :: LDO_CTRL [15:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_CTRL_LDO_CTRL_MASK           0x0000ffff
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_CTRL_LDO_CTRL_SHIFT          0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_CTRL_LDO_CTRL_DEFAULT        0x00005005

/***************************************************************************
 *PLL_VCXO0_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_PWRON_reserved0_MASK         0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_PWRON_reserved0_SHIFT        1

/* CLKGEN :: PLL_VCXO0_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK     0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT    0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT  0x00000001

/***************************************************************************
 *PLL_VCXO0_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LOCK_STATUS_reserved0_MASK       0xfffffffc
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LOCK_STATUS_reserved0_SHIFT      2

/* CLKGEN :: PLL_VCXO0_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LOCK_STATUS_LOCK_LOST_MASK       0x00000002
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LOCK_STATUS_LOCK_LOST_SHIFT      1

/* CLKGEN :: PLL_VCXO0_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LOCK_STATUS_LOCK_MASK            0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_LOCK_STATUS_LOCK_SHIFT           0

/***************************************************************************
 *PLL_VCXO0_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_MISC :: VCO_RANGE_LOW [31:31] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_RANGE_LOW_MASK          0x80000000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_RANGE_LOW_SHIFT         31
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_RANGE_LOW_DEFAULT       0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: VCO_RANGE_HIGH [30:30] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_RANGE_HIGH_MASK         0x40000000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_RANGE_HIGH_SHIFT        30
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_RANGE_HIGH_DEFAULT      0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: VCO_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_DIV2_MASK               0x20000000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_DIV2_SHIFT              29
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_VCO_DIV2_DEFAULT            0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_UPDATE_MASK            0x10000000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_UPDATE_SHIFT           28
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_UPDATE_DEFAULT         0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_SELECT_MASK            0x0e000000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_SELECT_SHIFT           25
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_SELECT_DEFAULT         0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_RESET_MASK             0x01000000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_RESET_SHIFT            24
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_RESET_DEFAULT          0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_MODE_MASK              0x00c00000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_MODE_SHIFT             22
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_STAT_MODE_DEFAULT           0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: REF_ALT_OFFS [21:21] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_REF_ALT_OFFS_MASK           0x00200000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_REF_ALT_OFFS_SHIFT          21
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_REF_ALT_OFFS_DEFAULT        0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: PWM_RATE [20:19] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_PWM_RATE_MASK               0x00180000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_PWM_RATE_SHIFT              19
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_PWM_RATE_DEFAULT            0x00000003

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: POST_CTRL_RESETB [18:17] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_POST_CTRL_RESETB_MASK       0x00060000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_POST_CTRL_RESETB_SHIFT      17
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_POST_CTRL_RESETB_DEFAULT    0x00000002

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: NDIV_RELOCK [16:16] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_NDIV_RELOCK_MASK            0x00010000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_NDIV_RELOCK_SHIFT           16
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_NDIV_RELOCK_DEFAULT         0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: FAST_LOCK [15:15] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_FAST_LOCK_MASK              0x00008000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_FAST_LOCK_SHIFT             15
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_FAST_LOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: DITHER_DISABLE [14:14] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DITHER_DISABLE_MASK         0x00004000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DITHER_DISABLE_SHIFT        14
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DITHER_DISABLE_DEFAULT      0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [13:13] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK 0x00002000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT 13
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: DCO_CTRL_BYPASS [12:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DCO_CTRL_BYPASS_MASK        0x00001ffe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DCO_CTRL_BYPASS_SHIFT       1
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT     0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC :: AUX_CTRL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_AUX_CTRL_MASK               0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_AUX_CTRL_SHIFT              0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC_AUX_CTRL_DEFAULT            0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_MISC2 :: PLLRESERVED0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC2_PLLRESERVED0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC2_PLLRESERVED0_SHIFT         1
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC2_PLLRESERVED0_DEFAULT       0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_MISC2 :: DIG_INPUT_SEL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC2_DIG_INPUT_SEL_MASK         0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC2_DIG_INPUT_SEL_SHIFT        0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_MISC2_DIG_INPUT_SEL_DEFAULT      0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_PWRON_reserved0_MASK             0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO0_PLL_PWRON_reserved0_SHIFT            1

/* CLKGEN :: PLL_VCXO0_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_PWRON_PWRON_PLL_MASK             0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_PWRON_PWRON_PLL_SHIFT            0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_PWRON_PWRON_PLL_DEFAULT          0x00000001

/***************************************************************************
 *PLL_VCXO0_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_reserved0_MASK             0xfffffffc
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_reserved0_SHIFT            2

/* CLKGEN :: PLL_VCXO0_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_RESETD_MASK                0x00000002
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_RESETD_SHIFT               1
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_RESETD_DEFAULT             0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_RESETA_MASK                0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_RESETA_SHIFT               0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_RESETA_DEFAULT             0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO0_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_STATUS_reserved0_MASK            0xfffff000
#define BCHP_CLKGEN_PLL_VCXO0_PLL_STATUS_reserved0_SHIFT           12

/* CLKGEN :: PLL_VCXO0_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_STATUS_TEST_STATUS_MASK          0x00000fff
#define BCHP_CLKGEN_PLL_VCXO0_PLL_STATUS_TEST_STATUS_SHIFT         0

/***************************************************************************
 *PLL_VCXO1_PLL_BG_PWRON - Bandgap Power on
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_BG_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_BG_PWRON_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_BG_PWRON_reserved0_SHIFT         1

/* CLKGEN :: PLL_VCXO1_PLL_BG_PWRON :: BG_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_BG_PWRON_BG_PWRON_PLL_MASK       0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_BG_PWRON_BG_PWRON_PLL_SHIFT      0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_BG_PWRON_BG_PWRON_PLL_DEFAULT    0x00000001

/***************************************************************************
 *PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0 - PLL CHANNEL control CH 0
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_reserved0_SHIFT 11

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0 :: POST_DIVIDER_HOLD_CH0 [10:10] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_MASK 0x00000400
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_SHIFT 10
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_POST_DIVIDER_HOLD_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0 :: PHASE_OFFSET_CH0 [09:09] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_MASK 0x00000200
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_SHIFT 9
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_PHASE_OFFSET_CH0_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0 :: MDIV_CH0 [08:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_SHIFT 1
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_MDIV_CH0_DEFAULT 0x00000040

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0 :: CLOCK_DIS_CH0 [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_0_CLOCK_DIS_CH0_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1 - PLL CHANNEL control CH 1
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_reserved0_SHIFT 11

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1 :: POST_DIVIDER_HOLD_CH1 [10:10] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_MASK 0x00000400
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_SHIFT 10
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_POST_DIVIDER_HOLD_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1 :: PHASE_OFFSET_CH1 [09:09] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_MASK 0x00000200
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_SHIFT 9
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_PHASE_OFFSET_CH1_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1 :: MDIV_CH1 [08:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_SHIFT 1
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_MDIV_CH1_DEFAULT 0x000000fa

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1 :: CLOCK_DIS_CH1 [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_1_CLOCK_DIS_CH1_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2 - PLL CHANNEL control CH 2
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2 :: reserved0 [31:11] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_reserved0_MASK 0xfffff800
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_reserved0_SHIFT 11

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2 :: POST_DIVIDER_HOLD_CH2 [10:10] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_MASK 0x00000400
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_SHIFT 10
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_POST_DIVIDER_HOLD_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2 :: PHASE_OFFSET_CH2 [09:09] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_MASK 0x00000200
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_SHIFT 9
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_PHASE_OFFSET_CH2_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2 :: MDIV_CH2 [08:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_MASK  0x000001fe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_SHIFT 1
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_MDIV_CH2_DEFAULT 0x0000007d

/* CLKGEN :: PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2 :: CLOCK_DIS_CH2 [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_CHANNEL_CTRL_CH_2_CLOCK_DIS_CH2_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_DIV - Pre multiplier
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_DIV :: reserved0 [31:14] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_reserved0_MASK               0xffffc000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_reserved0_SHIFT              14

/* CLKGEN :: PLL_VCXO1_PLL_DIV :: PDIV [13:10] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_PDIV_MASK                    0x00003c00
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_PDIV_SHIFT                   10
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_PDIV_DEFAULT                 0x00000002

/* CLKGEN :: PLL_VCXO1_PLL_DIV :: NDIV_INT [09:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_NDIV_INT_MASK                0x000003ff
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_NDIV_INT_SHIFT               0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_DIV_NDIV_INT_DEFAULT             0x00000040

/***************************************************************************
 *PLL_VCXO1_PLL_FRAC - Fractional
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_FRAC :: reserved0 [31:20] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_FRAC_reserved0_MASK              0xfff00000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_FRAC_reserved0_SHIFT             20

/* CLKGEN :: PLL_VCXO1_PLL_FRAC :: FRAC_CONTROL [19:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_FRAC_FRAC_CONTROL_MASK           0x000fffff
#define BCHP_CLKGEN_PLL_VCXO1_PLL_FRAC_FRAC_CONTROL_SHIFT          0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_FRAC_FRAC_CONTROL_DEFAULT        0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_GAIN - PLL GAIN
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_GAIN :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_reserved0_MASK              0xfffffc00
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_reserved0_SHIFT             10

/* CLKGEN :: PLL_VCXO1_PLL_GAIN :: LOOP_GAIN_PROPORTIONAL_IN_PHASE [09:06] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_MASK 0x000003c0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_SHIFT 6
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_PROPORTIONAL_IN_PHASE_DEFAULT 0x00000007

/* CLKGEN :: PLL_VCXO1_PLL_GAIN :: LOOP_GAIN_IN_FREQ [05:03] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_IN_FREQ_MASK      0x00000038
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_IN_FREQ_SHIFT     3
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_IN_FREQ_DEFAULT   0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_GAIN :: LOOP_GAIN_INTEGRATOR_IN_PHASE [02:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_MASK 0x00000007
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_GAIN_LOOP_GAIN_INTEGRATOR_IN_PHASE_DEFAULT 0x00000004

/***************************************************************************
 *PLL_VCXO1_PLL_HOLD_CH_ALL - Hold PLL all channels
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_HOLD_CH_ALL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_HOLD_CH_ALL_reserved0_MASK       0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_HOLD_CH_ALL_reserved0_SHIFT      1

/* CLKGEN :: PLL_VCXO1_PLL_HOLD_CH_ALL :: HOLD_CH_ALL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_HOLD_CH_ALL_HOLD_CH_ALL_MASK     0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_HOLD_CH_ALL_HOLD_CH_ALL_SHIFT    0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_HOLD_CH_ALL_HOLD_CH_ALL_DEFAULT  0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_LDO_CTRL - Ldo voltage control
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_LDO_CTRL :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_CTRL_reserved0_MASK          0xffff0000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_CTRL_reserved0_SHIFT         16

/* CLKGEN :: PLL_VCXO1_PLL_LDO_CTRL :: LDO_CTRL [15:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_CTRL_LDO_CTRL_MASK           0x0000ffff
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_CTRL_LDO_CTRL_SHIFT          0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_CTRL_LDO_CTRL_DEFAULT        0x00005005

/***************************************************************************
 *PLL_VCXO1_PLL_LDO_PWRON - LDO Power on
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_LDO_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_PWRON_reserved0_MASK         0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_PWRON_reserved0_SHIFT        1

/* CLKGEN :: PLL_VCXO1_PLL_LDO_PWRON :: LDO_PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_PWRON_LDO_PWRON_PLL_MASK     0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_PWRON_LDO_PWRON_PLL_SHIFT    0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LDO_PWRON_LDO_PWRON_PLL_DEFAULT  0x00000001

/***************************************************************************
 *PLL_VCXO1_PLL_LOCK_STATUS - Lock Status
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_LOCK_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LOCK_STATUS_reserved0_MASK       0xfffffffc
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LOCK_STATUS_reserved0_SHIFT      2

/* CLKGEN :: PLL_VCXO1_PLL_LOCK_STATUS :: LOCK_LOST [01:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LOCK_STATUS_LOCK_LOST_MASK       0x00000002
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LOCK_STATUS_LOCK_LOST_SHIFT      1

/* CLKGEN :: PLL_VCXO1_PLL_LOCK_STATUS :: LOCK [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LOCK_STATUS_LOCK_MASK            0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_LOCK_STATUS_LOCK_SHIFT           0

/***************************************************************************
 *PLL_VCXO1_PLL_MISC - Mscellaneous control bus.
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_MISC :: VCO_RANGE_LOW [31:31] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_RANGE_LOW_MASK          0x80000000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_RANGE_LOW_SHIFT         31
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_RANGE_LOW_DEFAULT       0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: VCO_RANGE_HIGH [30:30] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_RANGE_HIGH_MASK         0x40000000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_RANGE_HIGH_SHIFT        30
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_RANGE_HIGH_DEFAULT      0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: VCO_DIV2 [29:29] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_DIV2_MASK               0x20000000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_DIV2_SHIFT              29
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_VCO_DIV2_DEFAULT            0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: STAT_UPDATE [28:28] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_UPDATE_MASK            0x10000000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_UPDATE_SHIFT           28
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_UPDATE_DEFAULT         0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: STAT_SELECT [27:25] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_SELECT_MASK            0x0e000000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_SELECT_SHIFT           25
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_SELECT_DEFAULT         0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: STAT_RESET [24:24] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_RESET_MASK             0x01000000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_RESET_SHIFT            24
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_RESET_DEFAULT          0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: STAT_MODE [23:22] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_MODE_MASK              0x00c00000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_MODE_SHIFT             22
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_STAT_MODE_DEFAULT           0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: REF_ALT_OFFS [21:21] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_REF_ALT_OFFS_MASK           0x00200000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_REF_ALT_OFFS_SHIFT          21
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_REF_ALT_OFFS_DEFAULT        0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: PWM_RATE [20:19] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_PWM_RATE_MASK               0x00180000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_PWM_RATE_SHIFT              19
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_PWM_RATE_DEFAULT            0x00000003

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: POST_CTRL_RESETB [18:17] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_POST_CTRL_RESETB_MASK       0x00060000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_POST_CTRL_RESETB_SHIFT      17
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_POST_CTRL_RESETB_DEFAULT    0x00000002

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: NDIV_RELOCK [16:16] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_NDIV_RELOCK_MASK            0x00010000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_NDIV_RELOCK_SHIFT           16
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_NDIV_RELOCK_DEFAULT         0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: FAST_LOCK [15:15] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_FAST_LOCK_MASK              0x00008000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_FAST_LOCK_SHIFT             15
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_FAST_LOCK_DEFAULT           0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: DITHER_DISABLE [14:14] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DITHER_DISABLE_MASK         0x00004000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DITHER_DISABLE_SHIFT        14
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DITHER_DISABLE_DEFAULT      0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: DCO_CTRL_BYPASS_ENABLE [13:13] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_MASK 0x00002000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_SHIFT 13
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DCO_CTRL_BYPASS_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: DCO_CTRL_BYPASS [12:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DCO_CTRL_BYPASS_MASK        0x00001ffe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DCO_CTRL_BYPASS_SHIFT       1
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_DCO_CTRL_BYPASS_DEFAULT     0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC :: AUX_CTRL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_AUX_CTRL_MASK               0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_AUX_CTRL_SHIFT              0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC_AUX_CTRL_DEFAULT            0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_MISC2 - Mscellaneous control bus continued.
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_MISC2 :: PLLRESERVED0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC2_PLLRESERVED0_MASK          0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC2_PLLRESERVED0_SHIFT         1
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC2_PLLRESERVED0_DEFAULT       0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_MISC2 :: DIG_INPUT_SEL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC2_DIG_INPUT_SEL_MASK         0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC2_DIG_INPUT_SEL_SHIFT        0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_MISC2_DIG_INPUT_SEL_DEFAULT      0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_PWRON - Poweron
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_PWRON :: reserved0 [31:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_PWRON_reserved0_MASK             0xfffffffe
#define BCHP_CLKGEN_PLL_VCXO1_PLL_PWRON_reserved0_SHIFT            1

/* CLKGEN :: PLL_VCXO1_PLL_PWRON :: PWRON_PLL [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_PWRON_PWRON_PLL_MASK             0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_PWRON_PWRON_PLL_SHIFT            0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_PWRON_PWRON_PLL_DEFAULT          0x00000001

/***************************************************************************
 *PLL_VCXO1_PLL_RESET - Resets
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_RESET :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_reserved0_MASK             0xfffffffc
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_reserved0_SHIFT            2

/* CLKGEN :: PLL_VCXO1_PLL_RESET :: RESETD [01:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_RESETD_MASK                0x00000002
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_RESETD_SHIFT               1
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_RESETD_DEFAULT             0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_RESET :: RESETA [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_RESETA_MASK                0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_RESETA_SHIFT               0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_RESETA_DEFAULT             0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH - Higher bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH :: reserved0 [31:16] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH_reserved0_MASK 0xffff0000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH_reserved0_SHIFT 16

/* CLKGEN :: PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH :: SSC_STEP [15:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_MASK 0x0000ffff
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_HIGH_SSC_STEP_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW - Lower bits of Spread Spectrum mode control
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW :: reserved0 [31:23] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_reserved0_MASK 0xff800000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_reserved0_SHIFT 23

/* CLKGEN :: PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW :: SSC_MODE [22:22] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_MASK 0x00400000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_SHIFT 22
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_SSC_MODE_DEFAULT 0x00000000

/* CLKGEN :: PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW :: SSC_LIMIT [21:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_MASK 0x003fffff
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_SHIFT 0
#define BCHP_CLKGEN_PLL_VCXO1_PLL_SSC_MODE_CONTROL_LOW_SSC_LIMIT_DEFAULT 0x00000000

/***************************************************************************
 *PLL_VCXO1_PLL_STATUS - Status
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_STATUS :: reserved0 [31:12] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_STATUS_reserved0_MASK            0xfffff000
#define BCHP_CLKGEN_PLL_VCXO1_PLL_STATUS_reserved0_SHIFT           12

/* CLKGEN :: PLL_VCXO1_PLL_STATUS :: TEST_STATUS [11:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_STATUS_TEST_STATUS_MASK          0x00000fff
#define BCHP_CLKGEN_PLL_VCXO1_PLL_STATUS_TEST_STATUS_SHIFT         0

/***************************************************************************
 *AON_MPM_TOP_INST_CLOCK_ENABLE - Aon mpm top inst clock enable
 ***************************************************************************/
/* CLKGEN :: AON_MPM_TOP_INST_CLOCK_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_reserved0_MASK   0xfffffffe
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT  1

/* CLKGEN :: AON_MPM_TOP_INST_CLOCK_ENABLE :: MPM_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_MPM_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_MPM_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_MPM_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS :: MPM_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS_MPM_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_AON_MPM_TOP_INST_CLOCK_ENABLE_STATUS_MPM_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *AON_MPM_TOP_INST_OBSERVE_CLOCK - Aon mpm top inst observe clock
 ***************************************************************************/
/* CLKGEN :: AON_MPM_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_reserved0_MASK  0xffffffc0
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: AON_MPM_TOP_INST_OBSERVE_CLOCK :: MPM_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: AON_MPM_TOP_INST_OBSERVE_CLOCK :: MPM_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: AON_MPM_TOP_INST_OBSERVE_CLOCK :: MPM_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_AON_MPM_TOP_INST_OBSERVE_CLOCK_MPM_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *BSPI_CLOCK_SELECT - Mux selects for BSPI_CLOCK clocks
 ***************************************************************************/
/* CLKGEN :: BSPI_CLOCK_SELECT :: reserved0 [31:03] */
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_reserved0_MASK               0xfffffff8
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_reserved0_SHIFT              3

/* CLKGEN :: BSPI_CLOCK_SELECT :: SPI_CLOCK_FREQ_SEL [02:01] */
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_SPI_CLOCK_FREQ_SEL_MASK      0x00000006
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_SPI_CLOCK_FREQ_SEL_SHIFT     1
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_SPI_CLOCK_FREQ_SEL_DEFAULT   0x00000000

/* CLKGEN :: BSPI_CLOCK_SELECT :: SPI_CLOCK_OVERRIDE_STRAP [00:00] */
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_SPI_CLOCK_OVERRIDE_STRAP_MASK 0x00000001
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_SPI_CLOCK_OVERRIDE_STRAP_SHIFT 0
#define BCHP_CLKGEN_BSPI_CLOCK_SELECT_SPI_CLOCK_OVERRIDE_STRAP_DEFAULT 0x00000000

/***************************************************************************
 *CLKGEN_CLOCK_DISABLE - Disable CLKGEN's clocks
 ***************************************************************************/
/* CLKGEN :: CLKGEN_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_reserved0_MASK            0xfffffffe
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_reserved0_SHIFT           1

/* CLKGEN :: CLKGEN_CLOCK_DISABLE :: DISABLE_AVS_CLOCK [00:00] */
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_DISABLE_AVS_CLOCK_MASK    0x00000001
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_DISABLE_AVS_CLOCK_SHIFT   0
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_DISABLE_AVS_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *CLKGEN_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: CLKGEN_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_STATUS_reserved0_MASK     0xfffffffe
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_STATUS_reserved0_SHIFT    1

/* CLKGEN :: CLKGEN_CLOCK_DISABLE_STATUS :: DISABLE_AVS_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_STATUS_DISABLE_AVS_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_CLKGEN_CLOCK_DISABLE_STATUS_DISABLE_AVS_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *CLOCK_MONITOR_CONTROL - Clock Monitor Control
 ***************************************************************************/
/* CLKGEN :: CLOCK_MONITOR_CONTROL :: reserved0 [31:04] */
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_reserved0_MASK           0xfffffff0
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_reserved0_SHIFT          4

/* CLKGEN :: CLOCK_MONITOR_CONTROL :: STOP_VIEW_COUNTER [03:03] */
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_STOP_VIEW_COUNTER_MASK   0x00000008
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_STOP_VIEW_COUNTER_SHIFT  3
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_STOP_VIEW_COUNTER_DEFAULT 0x00000001

/* CLKGEN :: CLOCK_MONITOR_CONTROL :: STOP_REF_COUNTER [02:02] */
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_STOP_REF_COUNTER_MASK    0x00000004
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_STOP_REF_COUNTER_SHIFT   2
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_STOP_REF_COUNTER_DEFAULT 0x00000001

/* CLKGEN :: CLOCK_MONITOR_CONTROL :: RESET_COUNTERS [01:01] */
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_RESET_COUNTERS_MASK      0x00000002
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_RESET_COUNTERS_SHIFT     1
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_RESET_COUNTERS_DEFAULT   0x00000001

/* CLKGEN :: CLOCK_MONITOR_CONTROL :: LAUNCH_AUTO_REF_COUNT [00:00] */
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_LAUNCH_AUTO_REF_COUNT_MASK 0x00000001
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_LAUNCH_AUTO_REF_COUNT_SHIFT 0
#define BCHP_CLKGEN_CLOCK_MONITOR_CONTROL_LAUNCH_AUTO_REF_COUNT_DEFAULT 0x00000001

/***************************************************************************
 *CLOCK_MONITOR_MAX_COUNT - Clock Monitor Max Reference Count
 ***************************************************************************/
/* CLKGEN :: CLOCK_MONITOR_MAX_COUNT :: SET_MAX_REF_COUNT [31:00] */
#define BCHP_CLKGEN_CLOCK_MONITOR_MAX_COUNT_SET_MAX_REF_COUNT_MASK 0xffffffff
#define BCHP_CLKGEN_CLOCK_MONITOR_MAX_COUNT_SET_MAX_REF_COUNT_SHIFT 0
#define BCHP_CLKGEN_CLOCK_MONITOR_MAX_COUNT_SET_MAX_REF_COUNT_DEFAULT 0xffffffff

/***************************************************************************
 *CLOCK_MONITOR_REF_COUNTER - Clock Monitor Reference Counter
 ***************************************************************************/
/* CLKGEN :: CLOCK_MONITOR_REF_COUNTER :: READ_MAX_COUNT [31:00] */
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_COUNTER_READ_MAX_COUNT_MASK  0xffffffff
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_COUNTER_READ_MAX_COUNT_SHIFT 0

/***************************************************************************
 *CLOCK_MONITOR_REF_DONE - Clock Monitor Reference Counter
 ***************************************************************************/
/* CLKGEN :: CLOCK_MONITOR_REF_DONE :: reserved0 [31:01] */
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_DONE_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_DONE_reserved0_SHIFT         1

/* CLKGEN :: CLOCK_MONITOR_REF_DONE :: REF_COUNT_DONE [00:00] */
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_DONE_REF_COUNT_DONE_MASK     0x00000001
#define BCHP_CLKGEN_CLOCK_MONITOR_REF_DONE_REF_COUNT_DONE_SHIFT    0

/***************************************************************************
 *CLOCK_MONITOR_VIEW_COUNTER - Clock Monitor View Counter
 ***************************************************************************/
/* CLKGEN :: CLOCK_MONITOR_VIEW_COUNTER :: READ_MAX_COUNT [31:00] */
#define BCHP_CLKGEN_CLOCK_MONITOR_VIEW_COUNTER_READ_MAX_COUNT_MASK 0xffffffff
#define BCHP_CLKGEN_CLOCK_MONITOR_VIEW_COUNTER_READ_MAX_COUNT_SHIFT 0

/***************************************************************************
 *DISABLE_AVS_TOP_DURING_S2 - Disable AVS_TOP 54MHz clocks during S2 standby.
 ***************************************************************************/
/* CLKGEN :: DISABLE_AVS_TOP_DURING_S2 :: reserved0 [31:01] */
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_reserved0_MASK       0xfffffffe
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_reserved0_SHIFT      1

/* CLKGEN :: DISABLE_AVS_TOP_DURING_S2 :: DISABLE_AVS_TOP [00:00] */
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_DISABLE_AVS_TOP_MASK 0x00000001
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_DISABLE_AVS_TOP_SHIFT 0
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_DISABLE_AVS_TOP_DEFAULT 0x00000000

/***************************************************************************
 *DISABLE_AVS_TOP_DURING_S2_SECURE - Secure AVS_TOP clock disable. Set at start-up to guarantee AVS_TOP is clock gated in S2 standby.
 ***************************************************************************/
/* CLKGEN :: DISABLE_AVS_TOP_DURING_S2_SECURE :: reserved0 [31:01] */
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_SECURE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_SECURE_reserved0_SHIFT 1

/* CLKGEN :: DISABLE_AVS_TOP_DURING_S2_SECURE :: DISABLE_AVS_TOP_SECURE [00:00] */
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_SECURE_DISABLE_AVS_TOP_SECURE_MASK 0x00000001
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_SECURE_DISABLE_AVS_TOP_SECURE_SHIFT 0
#define BCHP_CLKGEN_DISABLE_AVS_TOP_DURING_S2_SECURE_DISABLE_AVS_TOP_SECURE_DEFAULT 0x00000000

/***************************************************************************
 *INTERNAL_MUX_SELECT - Mux selects for Internal clocks
 ***************************************************************************/
/* CLKGEN :: INTERNAL_MUX_SELECT :: reserved0 [31:03] */
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_reserved0_MASK             0xfffffff8
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_reserved0_SHIFT            3

/* CLKGEN :: INTERNAL_MUX_SELECT :: PLLAUDIO2_REFERENCE_CLOCK [02:02] */
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO2_REFERENCE_CLOCK_MASK 0x00000004
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO2_REFERENCE_CLOCK_SHIFT 2
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO2_REFERENCE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: INTERNAL_MUX_SELECT :: PLLAUDIO1_REFERENCE_CLOCK [01:01] */
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO1_REFERENCE_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO1_REFERENCE_CLOCK_SHIFT 1
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO1_REFERENCE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: INTERNAL_MUX_SELECT :: PLLAUDIO0_REFERENCE_CLOCK [00:00] */
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO0_REFERENCE_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO0_REFERENCE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_INTERNAL_MUX_SELECT_PLLAUDIO0_REFERENCE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ITU656_0_MUX_SELECT - Mux selects for itu656_0 clocks
 ***************************************************************************/
/* CLKGEN :: ITU656_0_MUX_SELECT :: reserved0 [31:02] */
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_reserved0_MASK             0xfffffffc
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_reserved0_SHIFT            2

/* CLKGEN :: ITU656_0_MUX_SELECT :: VEC_ITU656_0_CLOCK [01:01] */
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_VEC_ITU656_0_CLOCK_MASK    0x00000002
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_VEC_ITU656_0_CLOCK_SHIFT   1
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_VEC_ITU656_0_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ITU656_0_MUX_SELECT :: ENABLE_INVERT_VEC_ITU656_0_CLOCK [00:00] */
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_ENABLE_INVERT_VEC_ITU656_0_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_ENABLE_INVERT_VEC_ITU656_0_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ITU656_0_MUX_SELECT_ENABLE_INVERT_VEC_ITU656_0_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE - Onoff aif mdac cal top inst enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE :: MDAC_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_MDAC_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_MDAC_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_MDAC_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE :: MDAC_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_MDAC_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_MDAC_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_ENABLE_MDAC_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK - Onoff aif mdac cal top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK :: MDAC_SAR_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_SAR_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_SAR_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_SAR_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK :: MDAC_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK :: MDAC_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_OBSERVE_CLOCK_MDAC_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_AIF_MDAC_CAL_TOP_INST_SEL - Onoff aif mdac cal top inst sel
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_SEL :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_SEL_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_SEL_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_AIF_MDAC_CAL_TOP_INST_SEL :: MDAC_BYPASS_CLK_SEL [00:00] */
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_SEL_MDAC_BYPASS_CLK_SEL_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_SEL_MDAC_BYPASS_CLK_SEL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_AIF_MDAC_CAL_TOP_INST_SEL_MDAC_BYPASS_CLK_SEL_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE - Onoff aif wb sat top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE :: AIF0_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_AIF0_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_AIF0_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_AIF0_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS :: AIF0_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS_AIF0_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_CLOCK_ENABLE_STATUS_AIF0_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_AIF_WB_SAT_TOP_INST_ENABLE - Onoff aif wb sat top inst enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_ENABLE :: AIF0_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_ENABLE_AIF0_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_ENABLE_AIF0_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_ENABLE_AIF0_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK - Onoff aif wb sat top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK :: AIF0_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK :: AIF0_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK :: AIF0_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_OBSERVE_CLOCK_AIF0_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_AIF_WB_SAT_TOP_INST_SEL - Onoff aif wb sat top inst sel
 ***************************************************************************/
/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_SEL :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_SEL_reserved0_MASK   0xfffffffe
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_SEL_reserved0_SHIFT  1

/* CLKGEN :: ONOFF_AIF_WB_SAT_TOP_INST_SEL :: AIF0_BYPASS_CLK_ADC_SEL [00:00] */
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_SEL_AIF0_BYPASS_CLK_ADC_SEL_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_SEL_AIF0_BYPASS_CLK_ADC_SEL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_AIF_WB_SAT_TOP_INST_SEL_AIF0_BYPASS_CLK_ADC_SEL_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL - Onoff ana pll4 1p8v ts28hpm 6mx 2mr fc x e pllaudio0 inst sel
 ***************************************************************************/
/* CLKGEN :: ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL :: PLL_AUDO0_ISO_OUT_SEL [00:00] */
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL_PLL_AUDO0_ISO_OUT_SEL_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL_PLL_AUDO0_ISO_OUT_SEL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_1P8V_TS28HPM_6MX_2MR_FC_X_E_PLLAUDIO0_INST_SEL_PLL_AUDO0_ISO_OUT_SEL_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL - Onoff ana pll4 rfmod 1p8v ts28hpm 6mx 2mr np x e pllaudio1 inst sel
 ***************************************************************************/
/* CLKGEN :: ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL :: PLL_AUDO0_ISO_OUT_SEL [00:00] */
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL_PLL_AUDO0_ISO_OUT_SEL_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL_PLL_AUDO0_ISO_OUT_SEL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_ANA_PLL4_RFMOD_1P8V_TS28HPM_6MX_2MR_NP_X_E_PLLAUDIO1_INST_SEL_PLL_AUDO0_ISO_OUT_SEL_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_BVN_TOP_INST_CLOCK_ENABLE - Onoff bvn top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE :: BVNT_SCB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_SCB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_SCB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE :: BVNT_GISB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_GISB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_GISB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE :: BVNT_BVB_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_BVB_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_BVB_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_BVB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE :: BVNT_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_BVNT_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS :: BVNT_SCB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_SCB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS :: BVNT_GISB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_GISB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS :: BVNT_BVB_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_BVB_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_BVB_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS :: BVNT_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_BVN_TOP_INST_CLOCK_ENABLE_STATUS_BVNT_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_CORE_XPT_INST_CLOCK_ENABLE - Onoff core xpt inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE :: XPT_SCB_CLOCK_ENABLE [04:04] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_SCB_CLOCK_ENABLE_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_SCB_CLOCK_ENABLE_SHIFT 4
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE :: XPT_GISB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_GISB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_GISB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE :: XPT_CORE_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_CORE_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_CORE_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_CORE_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE :: XPT_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE :: XPT_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_XPT_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS :: XPT_SCB_CLOCK_ENABLE_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_SCB_CLOCK_ENABLE_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS :: XPT_GISB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_GISB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS :: XPT_CORE_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_CORE_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_CORE_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS :: XPT_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS :: XPT_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_CLOCK_ENABLE_STATUS_XPT_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_CORE_XPT_INST_OBSERVE_CLOCK - Onoff core xpt inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_CORE_XPT_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_CORE_XPT_INST_OBSERVE_CLOCK :: XPT_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_CORE_XPT_INST_OBSERVE_CLOCK :: XPT_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_CORE_XPT_INST_OBSERVE_CLOCK :: XPT_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_CORE_XPT_INST_OBSERVE_CLOCK_XPT_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DFE_CORE_INST_CLOCK_CONTROL - Onoff dfe core inst clock control
 ***************************************************************************/
/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_CONTROL :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_CONTROL_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_CONTROL_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_CONTROL :: DFE_OBSERVE_CLOCK_CONTROL [03:00] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_CONTROL_DFE_OBSERVE_CLOCK_CONTROL_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_CONTROL_DFE_OBSERVE_CLOCK_CONTROL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_CONTROL_DFE_OBSERVE_CLOCK_CONTROL_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE - Onoff dfe core inst clock divider enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE :: DFE_OBSERVE_CLOCK_DIVIDER_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE_DFE_OBSERVE_CLOCK_DIVIDER_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE_DFE_OBSERVE_CLOCK_DIVIDER_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_DIVIDER_ENABLE_DFE_OBSERVE_CLOCK_DIVIDER_ENABLE_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DFE_CORE_INST_CLOCK_ENABLE - Onoff dfe core inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: reserved0 [31:07] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_reserved0_MASK 0xffffff80
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_reserved0_SHIFT 7

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: DFE_UFE_CLOCK_ENABLE [06:06] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_UFE_CLOCK_ENABLE_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_UFE_CLOCK_ENABLE_SHIFT 6
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_UFE_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: DFE_SYS_54_CLOCK_ENABLE [05:05] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_SYS_54_CLOCK_ENABLE_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_SYS_54_CLOCK_ENABLE_SHIFT 5
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_SYS_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: DFE_SYS_108_CLOCK_ENABLE [04:04] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_SYS_108_CLOCK_ENABLE_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_SYS_108_CLOCK_ENABLE_SHIFT 4
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_SYS_108_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: DFE_OBSERVE_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_OBSERVE_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_OBSERVE_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_OBSERVE_CLOCK_ENABLE_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: DFE_54_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_54_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_54_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: DFE_216_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_216_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_216_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_216_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE :: DFE_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_DFE_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:07] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xffffff80
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 7

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: DFE_UFE_CLOCK_ENABLE_STATUS [06:06] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_UFE_CLOCK_ENABLE_STATUS_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_UFE_CLOCK_ENABLE_STATUS_SHIFT 6

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: DFE_SYS_54_CLOCK_ENABLE_STATUS [05:05] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_SYS_54_CLOCK_ENABLE_STATUS_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_SYS_54_CLOCK_ENABLE_STATUS_SHIFT 5

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: DFE_SYS_108_CLOCK_ENABLE_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_SYS_108_CLOCK_ENABLE_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_SYS_108_CLOCK_ENABLE_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: DFE_OBSERVE_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_OBSERVE_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_OBSERVE_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: DFE_54_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_54_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_54_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: DFE_216_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_216_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_216_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS :: DFE_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DFE_CORE_INST_CLOCK_ENABLE_STATUS_DFE_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DS_TOPA_INST_CLOCK_ENABLE - Onoff ds topa inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DS_TOPA_INST_CLOCK_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DS_TOPA_INST_CLOCK_ENABLE :: DS_A_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_DS_A_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_DS_A_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_DS_A_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS :: DS_A_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS_DS_A_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_CLOCK_ENABLE_STATUS_DS_A_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE - Onoff ds topa inst observe clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE :: DS_A_OBSERVE_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE_DS_A_OBSERVE_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE_DS_A_OBSERVE_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DS_TOPA_INST_OBSERVE_CLOCK_ENABLE_DS_A_OBSERVE_CLOCK_ENABLE_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DUALSDS_INST_240 - Onoff dualsds inst 240
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_240 :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_reserved0_MASK          0xfffffffc
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_reserved0_SHIFT         2

/* CLKGEN :: ONOFF_DUALSDS_INST_240 :: SDS1_LV_CLK_PLL_SRC_SEL_I_CLK_240 [01:01] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_SDS1_LV_CLK_PLL_SRC_SEL_I_CLK_240_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_SDS1_LV_CLK_PLL_SRC_SEL_I_CLK_240_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_SDS1_LV_CLK_PLL_SRC_SEL_I_CLK_240_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_240 :: SDS0_LV_CLK_PLL_SRC_SEL_I_CLK_240 [00:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_SDS0_LV_CLK_PLL_SRC_SEL_I_CLK_240_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_SDS0_LV_CLK_PLL_SRC_SEL_I_CLK_240_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_240_SDS0_LV_CLK_PLL_SRC_SEL_I_CLK_240_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DUALSDS_INST_CLOCK_DISABLE - Disable ONOFF_DUALSDS_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_DISABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_DISABLE :: DISABLE_SDS0RCVR1_108_PRESPMBALANCE_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_DISABLE_SDS0RCVR1_108_PRESPMBALANCE_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_DISABLE_SDS0RCVR1_108_PRESPMBALANCE_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_DISABLE_SDS0RCVR1_108_PRESPMBALANCE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_DISABLE :: DISABLE_SDS0RCVR0_108_PRESPMBALANCE_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_DISABLE_SDS0RCVR0_108_PRESPMBALANCE_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_DISABLE_SDS0RCVR0_108_PRESPMBALANCE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_DISABLE_SDS0RCVR0_108_PRESPMBALANCE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS :: DISABLE_SDS0RCVR1_108_PRESPMBALANCE_CLOCK_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS_DISABLE_SDS0RCVR1_108_PRESPMBALANCE_CLOCK_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS_DISABLE_SDS0RCVR1_108_PRESPMBALANCE_CLOCK_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS :: DISABLE_SDS0RCVR0_108_PRESPMBALANCE_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS_DISABLE_SDS0RCVR0_108_PRESPMBALANCE_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_DISABLE_STATUS_DISABLE_SDS0RCVR0_108_PRESPMBALANCE_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DUALSDS_INST_CLOCK_ENABLE - Onoff dualsds inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE :: SDS1_54_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS1_54_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS1_54_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS1_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE :: SDS1_108_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS1_108_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS1_108_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS1_108_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE :: SDS0_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS0_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS0_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS0_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE :: SDS0_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS0_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS0_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_SDS0_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS :: SDS1_54_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS1_54_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS1_54_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS :: SDS1_108_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS1_108_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS1_108_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS :: SDS0_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS0_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS0_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS :: SDS0_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS0_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_CLOCK_ENABLE_STATUS_SDS0_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DUALSDS_INST_OBSERVE_CLOCK - Onoff dualsds inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: reserved0 [31:24] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_reserved0_MASK 0xff000000
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_reserved0_SHIFT 24

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0TFEC1_ENABLE_OBSERVE_CLOCK [23:23] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_ENABLE_OBSERVE_CLOCK_MASK 0x00800000
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_ENABLE_OBSERVE_CLOCK_SHIFT 23
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0TFEC1_ENABLE_DIVIDER_OBSERVE_CLOCK [22:22] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00400000
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 22
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0TFEC1_CONTROL_OBSERVE_CLOCK [21:18] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_CONTROL_OBSERVE_CLOCK_MASK 0x003c0000
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_CONTROL_OBSERVE_CLOCK_SHIFT 18
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC1_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0TFEC0_ENABLE_OBSERVE_CLOCK [17:17] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_ENABLE_OBSERVE_CLOCK_MASK 0x00020000
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_ENABLE_OBSERVE_CLOCK_SHIFT 17
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0TFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK [16:16] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00010000
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 16
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0TFEC0_CONTROL_OBSERVE_CLOCK [15:12] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_CONTROL_OBSERVE_CLOCK_MASK 0x0000f000
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_CONTROL_OBSERVE_CLOCK_SHIFT 12
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0TFEC0_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0RCVR1_ENABLE_OBSERVE_CLOCK [11:11] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_ENABLE_OBSERVE_CLOCK_MASK 0x00000800
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_ENABLE_OBSERVE_CLOCK_SHIFT 11
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0RCVR1_ENABLE_DIVIDER_OBSERVE_CLOCK [10:10] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000400
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 10
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0RCVR1_CONTROL_OBSERVE_CLOCK [09:06] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_CONTROL_OBSERVE_CLOCK_MASK 0x000003c0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_CONTROL_OBSERVE_CLOCK_SHIFT 6
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR1_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0RCVR0_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0RCVR0_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_OBSERVE_CLOCK :: SDS0RCVR0_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_OBSERVE_CLOCK_SDS0RCVR0_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DUALSDS_INST_PLL_CLOCK - Onoff dualsds inst pll clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_PLL_CLOCK :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_reserved0_MASK    0xfffffff0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_reserved0_SHIFT   4

/* CLKGEN :: ONOFF_DUALSDS_INST_PLL_CLOCK :: SDS0TFEC1_PLL_CLOCK [03:03] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0TFEC1_PLL_CLOCK_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0TFEC1_PLL_CLOCK_SHIFT 3
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0TFEC1_PLL_CLOCK_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DUALSDS_INST_PLL_CLOCK :: SDS0TFEC0_PLL_CLOCK [02:02] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0TFEC0_PLL_CLOCK_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0TFEC0_PLL_CLOCK_SHIFT 2
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0TFEC0_PLL_CLOCK_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DUALSDS_INST_PLL_CLOCK :: SDS0RCVR1_PLL_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0RCVR1_PLL_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0RCVR1_PLL_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0RCVR1_PLL_CLOCK_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DUALSDS_INST_PLL_CLOCK :: SDS0RCVR0_PLL_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0RCVR0_PLL_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0RCVR0_PLL_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_PLL_CLOCK_SDS0RCVR0_PLL_CLOCK_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DUALSDS_INST_SEL - Onoff dualsds inst sel
 ***************************************************************************/
/* CLKGEN :: ONOFF_DUALSDS_INST_SEL :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_reserved0_MASK          0xfffffffc
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_reserved0_SHIFT         2

/* CLKGEN :: ONOFF_DUALSDS_INST_SEL :: SDS1_LV_CLK_PLL_SRC_SEL [01:01] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_SDS1_LV_CLK_PLL_SRC_SEL_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_SDS1_LV_CLK_PLL_SRC_SEL_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_SDS1_LV_CLK_PLL_SRC_SEL_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DUALSDS_INST_SEL :: SDS0_LV_CLK_PLL_SRC_SEL [00:00] */
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_SDS0_LV_CLK_PLL_SRC_SEL_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_SDS0_LV_CLK_PLL_SRC_SEL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DUALSDS_INST_SEL_SDS0_LV_CLK_PLL_SRC_SEL_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DVP_HR_INST_CLOCK_DISABLE - Disable ONOFF_DVP_HR_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_DISABLE :: DISABLE_DVPHR_ALWAYSON_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_DISABLE_DVPHR_ALWAYSON_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_DISABLE_DVPHR_ALWAYSON_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_DISABLE_DVPHR_ALWAYSON_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS :: DISABLE_DVPHR_ALWAYSON_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS_DISABLE_DVPHR_ALWAYSON_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_DISABLE_STATUS_DISABLE_DVPHR_ALWAYSON_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DVP_HR_INST_CLOCK_ENABLE - Onoff dvp hr inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_reserved0_MASK  0xfffffff0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE :: DVPHR_GISB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_GISB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_GISB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE :: DVPHR_BVB_324_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_BVB_324_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_BVB_324_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_BVB_324_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE :: DVPHR_BVB_216_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_BVB_216_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_BVB_216_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_BVB_216_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE :: DVPHR_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_DVPHR_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DVP_HR_INST_CLOCK_ENABLE0 - Onoff dvp hr inst clock enable0
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE0 :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE0 :: DVPHR_108_CLOCK_ENABLE0 [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_DVPHR_108_CLOCK_ENABLE0_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_DVPHR_108_CLOCK_ENABLE0_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_DVPHR_108_CLOCK_ENABLE0_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS :: DVPHR_108_CLOCK_ENABLE0_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS_DVPHR_108_CLOCK_ENABLE0_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE0_STATUS_DVPHR_108_CLOCK_ENABLE0_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS :: DVPHR_GISB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_GISB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS :: DVPHR_BVB_324_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_BVB_324_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_BVB_324_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS :: DVPHR_BVB_216_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_BVB_216_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_BVB_216_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS :: DVPHR_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_CLOCK_ENABLE_STATUS_DVPHR_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DVP_HR_INST_OBSERVE_CTRL - Onoff dvp hr inst observe ctrl
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_OBSERVE_CTRL :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_CTRL_reserved0_MASK  0xfffffff0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_CTRL_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_DVP_HR_INST_OBSERVE_CTRL :: DVPHR_CONTROL_OBSERVE_CTRL [03:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_CTRL_DVPHR_CONTROL_OBSERVE_CTRL_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_CTRL_DVPHR_CONTROL_OBSERVE_CTRL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_CTRL_DVPHR_CONTROL_OBSERVE_CTRL_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE - Onoff dvp hr inst observe div enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE :: DVPHR_ENABLE_DIVIDER_OBSERVE_DIV_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE_DVPHR_ENABLE_DIVIDER_OBSERVE_DIV_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE_DVPHR_ENABLE_DIVIDER_OBSERVE_DIV_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_DIV_ENABLE_DVPHR_ENABLE_DIVIDER_OBSERVE_DIV_ENABLE_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DVP_HR_INST_OBSERVE_ENABLE - Onoff dvp hr inst observe enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_HR_INST_OBSERVE_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_HR_INST_OBSERVE_ENABLE :: DVPHR_ENABLE_OBSERVE_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_ENABLE_DVPHR_ENABLE_OBSERVE_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_ENABLE_DVPHR_ENABLE_OBSERVE_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_HR_INST_OBSERVE_ENABLE_DVPHR_ENABLE_OBSERVE_ENABLE_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE - Disable ONOFF_DVP_MHT__7364_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE :: DISABLE_DVPHT_IIC_MASTER_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_DISABLE_DVPHT_IIC_MASTER_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_DISABLE_DVPHT_IIC_MASTER_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_DISABLE_DVPHT_IIC_MASTER_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS :: DISABLE_DVPHT_IIC_MASTER_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS_DISABLE_DVPHT_IIC_MASTER_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_DISABLE_STATUS_DISABLE_DVPHT_IIC_MASTER_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE - Onoff dvp mht  7364 inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE :: DVPHT_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_DVPHT_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_DVPHT_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_DVPHT_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE :: DVPHT_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_DVPHT_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_DVPHT_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_DVPHT_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS :: DVPHT_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS_DVPHT_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS_DVPHT_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS :: DVPHT_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS_DVPHT_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_CLOCK_ENABLE_STATUS_DVPHT_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_DVP_MHT__7364_INST_ENABLE - Onoff dvp mht  7364 inst enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_ENABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_ENABLE :: DVPHT_CLK_BVB_648_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_648_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_648_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_648_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_ENABLE :: DVPHT_CLK_BVB_324_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_324_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_324_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_324_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_ENABLE :: DVPHT_CLK_BVB_216_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_216_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_216_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_ENABLE_DVPHT_CLK_BVB_216_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK - Onoff dvp mht  7364 inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK :: DVPHT_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK :: DVPHT_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK :: DVPHT_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_DVP_MHT__7364_INST_OBSERVE_CLOCK_DVPHT_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE - Onoff eaglet top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE :: A15C_SCB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_SCB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_SCB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE :: A15C_GISB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_GISB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_GISB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE :: A15C_CPU_SECURE_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_CPU_SECURE_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_CPU_SECURE_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_CPU_SECURE_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE :: A15C_CPU_C_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_CPU_C_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_CPU_C_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_A15C_CPU_C_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS :: A15C_SCB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_SCB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS :: A15C_GISB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_GISB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS :: A15C_CPU_SECURE_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_CPU_SECURE_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_CPU_SECURE_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS :: A15C_CPU_C_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_CPU_C_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_EAGLET_TOP_INST_CLOCK_ENABLE_STATUS_A15C_CPU_C_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5 - Onoff egphy28 1port 33v 90o fc inst div5
 ***************************************************************************/
/* CLKGEN :: ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5 :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5 :: EGPHY_PLL_SEL_DIV5 [00:00] */
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5_EGPHY_PLL_SEL_DIV5_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5_EGPHY_PLL_SEL_DIV5_SHIFT 0
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_DIV5_EGPHY_PLL_SEL_DIV5_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL - Onoff egphy28 1port 33v 90o fc inst sel
 ***************************************************************************/
/* CLKGEN :: ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL :: EGPHY_PLL_REF_SEL [02:01] */
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_EGPHY_PLL_REF_SEL_MASK 0x00000006
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_EGPHY_PLL_REF_SEL_SHIFT 1
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_EGPHY_PLL_REF_SEL_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL :: EGPHY_PLL_CLK_SEL [00:00] */
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_EGPHY_PLL_CLK_SEL_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_EGPHY_PLL_CLK_SEL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_EGPHY28_1PORT_33V_90O_FC_INST_SEL_EGPHY_PLL_CLK_SEL_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_FSK_TOP_INST_CLOCK_DISABLE - Disable ONOFF_FSK_TOP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_DISABLE :: DISABLE_FSK_DIG_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_DISABLE_FSK_DIG_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_DISABLE_FSK_DIG_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_DISABLE_FSK_DIG_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_FSK_DIG_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_FSK_DIG_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_FSK_DIG_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_FSK_TOP_INST_CLOCK_ENABLE - Onoff fsk top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE :: FSK_DIG_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_DIG_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_DIG_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_DIG_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE :: FSK_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE :: FSK_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_FSK_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS :: FSK_DIG_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_FSK_DIG_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_FSK_DIG_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS :: FSK_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_FSK_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_FSK_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS :: FSK_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_FSK_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_CLOCK_ENABLE_STATUS_FSK_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_FSK_TOP_INST_OBSERVE_CLOCK - Onoff fsk top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_FSK_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_FSK_TOP_INST_OBSERVE_CLOCK :: FSK_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_FSK_TOP_INST_OBSERVE_CLOCK :: FSK_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_FSK_TOP_INST_OBSERVE_CLOCK :: FSK_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_FSK_TOP_INST_OBSERVE_CLOCK_FSK_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_DISABLE - Disable ONOFF_GENET_TOP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: reserved0 [31:08] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_reserved0_MASK 0xffffff00
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_reserved0_SHIFT 8

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET1_SYSTEM_SLOW_CLOCK [07:07] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_SLOW_CLOCK_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_SLOW_CLOCK_SHIFT 7
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_SLOW_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET1_SYSTEM_PM_CLOCK [06:06] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_PM_CLOCK_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_PM_CLOCK_SHIFT 6
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_PM_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET1_SYSTEM_FAST_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_FAST_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_FAST_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_SYSTEM_FAST_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET1_ALWAYSON_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_ALWAYSON_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_ALWAYSON_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET1_ALWAYSON_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET0_SYSTEM_SLOW_CLOCK [03:03] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_SLOW_CLOCK_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_SLOW_CLOCK_SHIFT 3
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_SLOW_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET0_SYSTEM_PM_CLOCK [02:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_PM_CLOCK_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_PM_CLOCK_SHIFT 2
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_PM_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET0_SYSTEM_FAST_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_FAST_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_FAST_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_SYSTEM_FAST_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE :: DISABLE_GENET0_ALWAYSON_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_ALWAYSON_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_ALWAYSON_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_DISABLE_GENET0_ALWAYSON_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:08] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xffffff00
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 8

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET1_SYSTEM_SLOW_CLOCK_STATUS [07:07] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_SYSTEM_SLOW_CLOCK_STATUS_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_SYSTEM_SLOW_CLOCK_STATUS_SHIFT 7

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET1_SYSTEM_PM_CLOCK_STATUS [06:06] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_SYSTEM_PM_CLOCK_STATUS_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_SYSTEM_PM_CLOCK_STATUS_SHIFT 6

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET1_SYSTEM_FAST_CLOCK_STATUS [05:05] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_SYSTEM_FAST_CLOCK_STATUS_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_SYSTEM_FAST_CLOCK_STATUS_SHIFT 5

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET1_ALWAYSON_CLOCK_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_ALWAYSON_CLOCK_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET1_ALWAYSON_CLOCK_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET0_SYSTEM_SLOW_CLOCK_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_SYSTEM_SLOW_CLOCK_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_SYSTEM_SLOW_CLOCK_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET0_SYSTEM_PM_CLOCK_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_SYSTEM_PM_CLOCK_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_SYSTEM_PM_CLOCK_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET0_SYSTEM_FAST_CLOCK_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_SYSTEM_FAST_CLOCK_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_SYSTEM_FAST_CLOCK_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_GENET0_ALWAYSON_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_ALWAYSON_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_GENET0_ALWAYSON_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE - Onoff genet top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE :: GENET_SCB_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET_SCB_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET_SCB_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE :: GENET_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 - Onoff genet top inst clock enable genet0
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: reserved0 [31:09] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_reserved0_MASK 0xfffffe00
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_reserved0_SHIFT 9

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET0 [08:08] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET0_MASK 0x00000100
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET0_SHIFT 8
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET0 [07:07] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET0_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET0_SHIFT 7
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_SCB_CLOCK_ENABLE_GENET0 [06:06] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_SCB_CLOCK_ENABLE_GENET0_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_SCB_CLOCK_ENABLE_GENET0_SHIFT 6
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_SCB_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_L2INTR_CLOCK_ENABLE_GENET0 [05:05] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_L2INTR_CLOCK_ENABLE_GENET0_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_L2INTR_CLOCK_ENABLE_GENET0_SHIFT 5
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_L2INTR_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_HFB_CLOCK_ENABLE_GENET0 [04:04] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_HFB_CLOCK_ENABLE_GENET0_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_HFB_CLOCK_ENABLE_GENET0_SHIFT 4
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_HFB_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_GMII_CLOCK_ENABLE_GENET0 [03:03] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_GMII_CLOCK_ENABLE_GENET0_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_GMII_CLOCK_ENABLE_GENET0_SHIFT 3
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_GMII_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_GISB_CLOCK_ENABLE_GENET0 [02:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_GISB_CLOCK_ENABLE_GENET0_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_GISB_CLOCK_ENABLE_GENET0_SHIFT 2
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_GISB_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_EEE_CLOCK_ENABLE_GENET0 [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_EEE_CLOCK_ENABLE_GENET0_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_EEE_CLOCK_ENABLE_GENET0_SHIFT 1
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_EEE_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0 :: GENET0_CLK_250_CLOCK_ENABLE_GENET0 [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_CLK_250_CLOCK_ENABLE_GENET0_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_CLK_250_CLOCK_ENABLE_GENET0_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_GENET0_CLK_250_CLOCK_ENABLE_GENET0_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: reserved0 [31:09] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_reserved0_MASK 0xfffffe00
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_reserved0_SHIFT 9

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET0_STATUS [08:08] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000100
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET0_STATUS_SHIFT 8

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET0_STATUS [07:07] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET0_STATUS_SHIFT 7

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_SCB_CLOCK_ENABLE_GENET0_STATUS [06:06] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_SCB_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_SCB_CLOCK_ENABLE_GENET0_STATUS_SHIFT 6

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_L2INTR_CLOCK_ENABLE_GENET0_STATUS [05:05] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_L2INTR_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_L2INTR_CLOCK_ENABLE_GENET0_STATUS_SHIFT 5

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_HFB_CLOCK_ENABLE_GENET0_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_HFB_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_HFB_CLOCK_ENABLE_GENET0_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_GMII_CLOCK_ENABLE_GENET0_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_GMII_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_GMII_CLOCK_ENABLE_GENET0_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_GISB_CLOCK_ENABLE_GENET0_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_GISB_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_GISB_CLOCK_ENABLE_GENET0_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_EEE_CLOCK_ENABLE_GENET0_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_EEE_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_EEE_CLOCK_ENABLE_GENET0_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS :: GENET0_CLK_250_CLOCK_ENABLE_GENET0_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_CLK_250_CLOCK_ENABLE_GENET0_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET0_STATUS_GENET0_CLK_250_CLOCK_ENABLE_GENET0_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 - Onoff genet top inst clock enable genet1
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: reserved0 [31:08] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_reserved0_MASK 0xffffff00
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_reserved0_SHIFT 8

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET1 [07:07] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET1_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET1_SHIFT 7
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET1 [06:06] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET1_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET1_SHIFT 6
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_SCB_CLOCK_ENABLE_GENET1 [05:05] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_SCB_CLOCK_ENABLE_GENET1_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_SCB_CLOCK_ENABLE_GENET1_SHIFT 5
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_SCB_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_L2INTR_CLOCK_ENABLE_GENET1 [04:04] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_L2INTR_CLOCK_ENABLE_GENET1_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_L2INTR_CLOCK_ENABLE_GENET1_SHIFT 4
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_L2INTR_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_HFB_CLOCK_ENABLE_GENET1 [03:03] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_HFB_CLOCK_ENABLE_GENET1_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_HFB_CLOCK_ENABLE_GENET1_SHIFT 3
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_HFB_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_GMII_CLOCK_ENABLE_GENET1 [02:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_GMII_CLOCK_ENABLE_GENET1_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_GMII_CLOCK_ENABLE_GENET1_SHIFT 2
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_GMII_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_GISB_CLOCK_ENABLE_GENET1 [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_GISB_CLOCK_ENABLE_GENET1_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_GISB_CLOCK_ENABLE_GENET1_SHIFT 1
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_GISB_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1 :: GENET1_EEE_CLOCK_ENABLE_GENET1 [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_EEE_CLOCK_ENABLE_GENET1_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_EEE_CLOCK_ENABLE_GENET1_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_GENET1_EEE_CLOCK_ENABLE_GENET1_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: reserved0 [31:08] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_reserved0_MASK 0xffffff00
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_reserved0_SHIFT 8

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET1_STATUS [07:07] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_UNIMAC_SYS_TX_CLOCK_ENABLE_GENET1_STATUS_SHIFT 7

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET1_STATUS [06:06] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_UNIMAC_SYS_RX_CLOCK_ENABLE_GENET1_STATUS_SHIFT 6

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_SCB_CLOCK_ENABLE_GENET1_STATUS [05:05] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_SCB_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_SCB_CLOCK_ENABLE_GENET1_STATUS_SHIFT 5

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_L2INTR_CLOCK_ENABLE_GENET1_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_L2INTR_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_L2INTR_CLOCK_ENABLE_GENET1_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_HFB_CLOCK_ENABLE_GENET1_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_HFB_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_HFB_CLOCK_ENABLE_GENET1_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_GMII_CLOCK_ENABLE_GENET1_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_GMII_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_GMII_CLOCK_ENABLE_GENET1_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_GISB_CLOCK_ENABLE_GENET1_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_GISB_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_GISB_CLOCK_ENABLE_GENET1_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS :: GENET1_EEE_CLOCK_ENABLE_GENET1_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_EEE_CLOCK_ENABLE_GENET1_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET1_STATUS_GENET1_EEE_CLOCK_ENABLE_GENET1_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2 - Onoff genet top inst clock enable genet2
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2 :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2 :: GENET2_GISB_CLOCK_ENABLE_GENET2 [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_GENET2_GISB_CLOCK_ENABLE_GENET2_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_GENET2_GISB_CLOCK_ENABLE_GENET2_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_GENET2_GISB_CLOCK_ENABLE_GENET2_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS :: GENET2_GISB_CLOCK_ENABLE_GENET2_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS_GENET2_GISB_CLOCK_ENABLE_GENET2_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_GENET2_STATUS_GENET2_GISB_CLOCK_ENABLE_GENET2_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS :: GENET_SCB_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS_GENET_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS_GENET_SCB_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS :: GENET_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS_GENET_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_ENABLE_STATUS_GENET_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0 - Onoff genet top inst clock select genet0
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0 :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0 :: GENET0_GMII_CLOCK_SELECT_GENET0 [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_GENET0_GMII_CLOCK_SELECT_GENET0_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_GENET0_GMII_CLOCK_SELECT_GENET0_SHIFT 1
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_GENET0_GMII_CLOCK_SELECT_GENET0_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0 :: GENET0_CLOCK_SELECT_GENET0 [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_GENET0_CLOCK_SELECT_GENET0_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_GENET0_CLOCK_SELECT_GENET0_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET0_GENET0_CLOCK_SELECT_GENET0_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1 - Onoff genet top inst clock select genet1
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1 :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1 :: GENET1_GMII_CLOCK_SELECT_GENET1 [01:01] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_GENET1_GMII_CLOCK_SELECT_GENET1_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_GENET1_GMII_CLOCK_SELECT_GENET1_SHIFT 1
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_GENET1_GMII_CLOCK_SELECT_GENET1_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1 :: GENET1_CLOCK_SELECT_GENET1 [00:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_GENET1_CLOCK_SELECT_GENET1_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_GENET1_CLOCK_SELECT_GENET1_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_CLOCK_SELECT_GENET1_GENET1_CLOCK_SELECT_GENET1_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_GENET_TOP_INST_OBSERVE_CLOCK - Onoff genet top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_GENET_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_GENET_TOP_INST_OBSERVE_CLOCK :: GENET_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_OBSERVE_CLOCK :: GENET_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_GENET_TOP_INST_OBSERVE_CLOCK :: GENET_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_GENET_TOP_INST_OBSERVE_CLOCK_GENET_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_HIF_INST_CLOCK_DISABLE - Disable ONOFF_HIF_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_reserved0_MASK    0xffffffc0
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_reserved0_SHIFT   6

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE :: DISABLE_NAND_DDR_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_NAND_DDR_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_NAND_DDR_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_NAND_DDR_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE :: DISABLE_HIF_SPI_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SPI_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SPI_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SPI_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE :: DISABLE_HIF_SDIO_EMMC_CLOCK [03:03] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SDIO_EMMC_CLOCK_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SDIO_EMMC_CLOCK_SHIFT 3
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SDIO_EMMC_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE :: DISABLE_HIF_SDIO_CARD_CLOCK [02:02] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SDIO_CARD_CLOCK_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SDIO_CARD_CLOCK_SHIFT 2
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_SDIO_CARD_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE :: DISABLE_HIF_EBI_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_EBI_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_EBI_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_EBI_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE :: DISABLE_HIF_27_SLOWCLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_27_SLOWCLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_27_SLOWCLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_DISABLE_HIF_27_SLOWCLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_HIF_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE_STATUS :: DISABLE_NAND_DDR_CLOCK_STATUS [05:05] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_NAND_DDR_CLOCK_STATUS_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_NAND_DDR_CLOCK_STATUS_SHIFT 5

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE_STATUS :: DISABLE_HIF_SPI_CLOCK_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_SPI_CLOCK_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_SPI_CLOCK_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE_STATUS :: DISABLE_HIF_SDIO_EMMC_CLOCK_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_SDIO_EMMC_CLOCK_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_SDIO_EMMC_CLOCK_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE_STATUS :: DISABLE_HIF_SDIO_CARD_CLOCK_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_SDIO_CARD_CLOCK_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_SDIO_CARD_CLOCK_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE_STATUS :: DISABLE_HIF_EBI_CLOCK_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_EBI_CLOCK_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_EBI_CLOCK_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_DISABLE_STATUS :: DISABLE_HIF_27_SLOWCLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_27_SLOWCLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_DISABLE_STATUS_DISABLE_HIF_27_SLOWCLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_HIF_INST_CLOCK_ENABLE - Onoff hif inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_HIF_INST_CLOCK_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_reserved0_MASK     0xfffffffe
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_reserved0_SHIFT    1

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_ENABLE :: HIF_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_HIF_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_HIF_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_HIF_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_HIF_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_HIF_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_HIF_INST_CLOCK_ENABLE_STATUS :: HIF_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_STATUS_HIF_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HIF_INST_CLOCK_ENABLE_STATUS_HIF_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_HIF_INST_OBSERVE_CLOCK - Onoff hif inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_HIF_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_reserved0_MASK    0xffffffc0
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_reserved0_SHIFT   6

/* CLKGEN :: ONOFF_HIF_INST_OBSERVE_CLOCK :: HIF_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HIF_INST_OBSERVE_CLOCK :: HIF_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HIF_INST_OBSERVE_CLOCK :: HIF_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_HIF_INST_OBSERVE_CLOCK_HIF_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE - Onoff hvd sid0 top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE :: HVD_SID0_SCB_CLOCK_ENABLE [05:05] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_SCB_CLOCK_ENABLE_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_SCB_CLOCK_ENABLE_SHIFT 5
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE :: HVD_SID0_GISB_CLOCK_ENABLE [04:04] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_GISB_CLOCK_ENABLE_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_GISB_CLOCK_ENABLE_SHIFT 4
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE :: HVD_SID0_CPU_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_CPU_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_CPU_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_CPU_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE :: HVD_SID0_CORE_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_CORE_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_CORE_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_CORE_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE :: HVD_SID0_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE :: HVD_SID0_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_HVD_SID0_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID - Onoff hvd sid0 top inst clock enable sid
 ***************************************************************************/
/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID :: SID_CORE_CLOCK_ENABLE_SID [00:00] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_SID_CORE_CLOCK_ENABLE_SID_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_SID_CORE_CLOCK_ENABLE_SID_SHIFT 0
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_SID_CORE_CLOCK_ENABLE_SID_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS :: SID_CORE_CLOCK_ENABLE_SID_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS_SID_CORE_CLOCK_ENABLE_SID_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_SID_STATUS_SID_CORE_CLOCK_ENABLE_SID_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS :: HVD_SID0_SCB_CLOCK_ENABLE_STATUS [05:05] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_SCB_CLOCK_ENABLE_STATUS_SHIFT 5

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS :: HVD_SID0_GISB_CLOCK_ENABLE_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_GISB_CLOCK_ENABLE_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS :: HVD_SID0_CPU_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_CPU_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_CPU_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS :: HVD_SID0_CORE_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_CORE_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_CORE_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS :: HVD_SID0_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS :: HVD_SID0_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_CLOCK_ENABLE_STATUS_HVD_SID0_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK - Onoff hvd sid0 top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK :: HVD_SID0_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK :: HVD_SID0_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK :: HVD_SID0_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_OBSERVE_CLOCK_HVD_SID0_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_HVD_SID0_TOP_INST_SELECT - Onoff hvd sid0 top inst select
 ***************************************************************************/
/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_SELECT :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_reserved0_MASK  0xfffffff8
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_SELECT :: HVD_SID0_SID_CLOCK_SELECT [02:02] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_SID_CLOCK_SELECT_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_SID_CLOCK_SELECT_SHIFT 2
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_SID_CLOCK_SELECT_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_SELECT :: HVD_SID0_CPU_CLOCK_SELECT [01:01] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_CPU_CLOCK_SELECT_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_CPU_CLOCK_SELECT_SHIFT 1
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_CPU_CLOCK_SELECT_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_HVD_SID0_TOP_INST_SELECT :: HVD_SID0_CORE_CLOCK_SELECT [00:00] */
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_CORE_CLOCK_SELECT_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_CORE_CLOCK_SELECT_SHIFT 0
#define BCHP_CLKGEN_ONOFF_HVD_SID0_TOP_INST_SELECT_HVD_SID0_CORE_CLOCK_SELECT_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_LEAP_TOP_INST_CLOCK_DISABLE - Disable ONOFF_LEAP_TOP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE :: DISABLE_LEAP_27_CLOCK [03:03] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_LEAP_27_CLOCK_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_LEAP_27_CLOCK_SHIFT 3
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_LEAP_27_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE :: DISABLE_LEAP_216_CLOCK [02:02] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_LEAP_216_CLOCK_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_LEAP_216_CLOCK_SHIFT 2
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_LEAP_216_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE :: DISABLE_DEMOD_XPT_0_MTSIF_TX1 [01:01] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_DEMOD_XPT_0_MTSIF_TX1_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_DEMOD_XPT_0_MTSIF_TX1_SHIFT 1
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_DEMOD_XPT_0_MTSIF_TX1_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE :: DISABLE_DEMOD_XPT_0_MTSIF_TX0 [00:00] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_DEMOD_XPT_0_MTSIF_TX0_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_DEMOD_XPT_0_MTSIF_TX0_SHIFT 0
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_DISABLE_DEMOD_XPT_0_MTSIF_TX0_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_LEAP_27_CLOCK_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_LEAP_27_CLOCK_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_LEAP_27_CLOCK_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_LEAP_216_CLOCK_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_LEAP_216_CLOCK_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_LEAP_216_CLOCK_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_DEMOD_XPT_0_MTSIF_TX1_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_DEMOD_XPT_0_MTSIF_TX1_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_DEMOD_XPT_0_MTSIF_TX1_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_DEMOD_XPT_0_MTSIF_TX0_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_DEMOD_XPT_0_MTSIF_TX0_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_DEMOD_XPT_0_MTSIF_TX0_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_LEAP_TOP_INST_CLOCK_ENABLE - Onoff leap top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE :: LEAP_SCB_CLOCK_ENABLE [04:04] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_SCB_CLOCK_ENABLE_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_SCB_CLOCK_ENABLE_SHIFT 4
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE :: LEAP_GISB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_GISB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_GISB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE :: LEAP_54_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_54_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_54_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE :: LEAP_216_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_216_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_216_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_216_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE :: LEAP_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_LEAP_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS :: LEAP_SCB_CLOCK_ENABLE_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_SCB_CLOCK_ENABLE_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS :: LEAP_GISB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_GISB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS :: LEAP_54_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_54_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_54_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS :: LEAP_216_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_216_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_216_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS :: LEAP_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_LEAP_TOP_INST_CLOCK_ENABLE_STATUS_LEAP_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_MEMSYS_16_INST_CLOCK_ENABLE - Onoff memsys 16 inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE :: MEMSYS0_SCB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_SCB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_SCB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE :: MEMSYS0_GISB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_GISB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_GISB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE :: MEMSYS0_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE :: MEMSYS0_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_MEMSYS0_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS :: MEMSYS0_SCB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_SCB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS :: MEMSYS0_GISB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_GISB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS :: MEMSYS0_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS :: MEMSYS0_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_CLOCK_ENABLE_STATUS_MEMSYS0_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK - Onoff memsys 16 inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK :: MEMSYS0_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK :: MEMSYS0_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK :: MEMSYS0_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_OBSERVE_CLOCK_MEMSYS0_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_MEMSYS_16_INST_STATUS - Onoff memsys 16 inst status
 ***************************************************************************/
/* CLKGEN :: ONOFF_MEMSYS_16_INST_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_STATUS_reserved0_MASK     0xfffffffe
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_STATUS_reserved0_SHIFT    1

/* CLKGEN :: ONOFF_MEMSYS_16_INST_STATUS :: MEMSYS0_PLL_LOCKED_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_STATUS_MEMSYS0_PLL_LOCKED_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_MEMSYS_16_INST_STATUS_MEMSYS0_PLL_LOCKED_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE - Onoff mocamac top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE :: MOCAMAC_SCB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_SCB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_SCB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE :: MOCAMAC_GISB_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_GISB_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_GISB_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE :: MOCAMAC_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_MOCAMAC_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS :: MOCAMAC_SCB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_MOCAMAC_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_MOCAMAC_SCB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS :: MOCAMAC_GISB_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_MOCAMAC_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_MOCAMAC_GISB_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS :: MOCAMAC_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_MOCAMAC_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_CLOCK_ENABLE_STATUS_MOCAMAC_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK - Onoff mocamac top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK :: MOCAMAC_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK :: MOCAMAC_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK :: MOCAMAC_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_MOCAMAC_TOP_INST_OBSERVE_CLOCK_MOCAMAC_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE - Onoff mocaphy top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE :: MOCAPHY_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_MOCAPHY_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_MOCAPHY_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_MOCAPHY_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS :: MOCAPHY_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS_MOCAPHY_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_CLOCK_ENABLE_STATUS_MOCAPHY_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK - Onoff mocaphy top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK :: MOCAPHY_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK :: MOCAPHY_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK :: MOCAPHY_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_MOCAPHY_TOP_INST_OBSERVE_CLOCK_MOCAPHY_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE - Disable ONOFF_PCIE_X1_TOP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE :: DISABLE_PCIE_ALWAYSON_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_DISABLE_PCIE_ALWAYSON_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_DISABLE_PCIE_ALWAYSON_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_DISABLE_PCIE_ALWAYSON_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_PCIE_ALWAYSON_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_PCIE_ALWAYSON_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_PCIE_ALWAYSON_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE - Onoff pcie x1 top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE :: PCIE_SCB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_SCB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_SCB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE :: PCIE_GISB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_GISB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_GISB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE :: PCIE_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE :: PCIE_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_PCIE_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS :: PCIE_SCB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_SCB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS :: PCIE_GISB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_GISB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS :: PCIE_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS :: PCIE_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_CLOCK_ENABLE_STATUS_PCIE_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK - Onoff pcie x1 top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK :: PCIE_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK :: PCIE_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK :: PCIE_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_PCIE_X1_TOP_INST_OBSERVE_CLOCK_PCIE_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_PROD_OTP_INST_CLOCK_DISABLE - Disable ONOFF_PROD_OTP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_DISABLE :: DISABLE_POTP_ALWAYSON_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_DISABLE_POTP_ALWAYSON_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_DISABLE_POTP_ALWAYSON_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_DISABLE_POTP_ALWAYSON_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS :: DISABLE_POTP_ALWAYSON_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS_DISABLE_POTP_ALWAYSON_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_DISABLE_STATUS_DISABLE_POTP_ALWAYSON_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_PROD_OTP_INST_CLOCK_ENABLE - Onoff prod otp inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_ENABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_ENABLE :: POTP_GISB_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_POTP_GISB_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_POTP_GISB_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_POTP_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_ENABLE :: POTP_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_POTP_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_POTP_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_POTP_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS :: POTP_GISB_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS_POTP_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS_POTP_GISB_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS :: POTP_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS_POTP_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_PROD_OTP_INST_CLOCK_ENABLE_STATUS_POTP_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE - Onoff raaga dsp top 0 inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE :: RAAGA0_SCB_CLOCK_ENABLE [04:04] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_SCB_CLOCK_ENABLE_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_SCB_CLOCK_ENABLE_SHIFT 4
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE :: RAAGA0_GISB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_GISB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_GISB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE :: RAAGA0_DSP_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_DSP_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_DSP_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_DSP_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE :: RAAGA0_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE :: RAAGA0_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_RAAGA0_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS :: RAAGA0_SCB_CLOCK_ENABLE_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_SCB_CLOCK_ENABLE_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS :: RAAGA0_GISB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_GISB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS :: RAAGA0_DSP_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_DSP_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_DSP_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS :: RAAGA0_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS :: RAAGA0_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_ENABLE_STATUS_RAAGA0_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT - Onoff raaga dsp top 0 inst clock select
 ***************************************************************************/
/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT :: RAAGA0_DSP_CLOCK_SELECT [00:00] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT_RAAGA0_DSP_CLOCK_SELECT_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT_RAAGA0_DSP_CLOCK_SELECT_SHIFT 0
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_CLOCK_SELECT_RAAGA0_DSP_CLOCK_SELECT_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK - Onoff raaga dsp top 0 inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK :: RAAGA0_ENABLE_OBSERVE_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_RAAGA0_ENABLE_OBSERVE_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_RAAGA0_ENABLE_OBSERVE_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_RAAGA0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK :: RAAGA0_ENABLE_DIVIDER_OBSERVE_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_RAAGA0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_RAAGA0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_RAAGA_DSP_TOP_0_INST_OBSERVE_CLOCK_RAAGA0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_RFM_TOP_INST_CLOCK_ENABLE - Onoff rfm top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE :: RFM_GISB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_GISB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_GISB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE :: RFM_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE :: RFM_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_RFM_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS :: RFM_GISB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_RFM_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_RFM_GISB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS :: RFM_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_RFM_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_RFM_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS :: RFM_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_RFM_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_CLOCK_ENABLE_STATUS_RFM_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_RFM_TOP_INST_OBSERVE_CLOCK - Onoff rfm top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_RFM_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_RFM_TOP_INST_OBSERVE_CLOCK :: RFM_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_RFM_TOP_INST_OBSERVE_CLOCK :: RFM_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_RFM_TOP_INST_OBSERVE_CLOCK :: RFM_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_RFM_TOP_INST_OBSERVE_CLOCK_RFM_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE - Onoff sds afec2x top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE :: AFEC0_PLL_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_PLL_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_PLL_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_PLL_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE :: AFEC0_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE :: AFEC0_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_AFEC0_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS :: AFEC0_PLL_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_AFEC0_PLL_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_AFEC0_PLL_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS :: AFEC0_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_AFEC0_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_AFEC0_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS :: AFEC0_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_AFEC0_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_CLOCK_ENABLE_STATUS_AFEC0_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK - Onoff sds afec2x top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK :: AFEC0_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK :: AFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK :: AFEC0TFEC0_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0TFEC0_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0TFEC0_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_OBSERVE_CLOCK_AFEC0TFEC0_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_SDS_AFEC2X_TOP_INST_SEL - Onoff sds afec2x top inst sel
 ***************************************************************************/
/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_SEL :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_SEL_reserved0_MASK   0xfffffffe
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_SEL_reserved0_SHIFT  1

/* CLKGEN :: ONOFF_SDS_AFEC2X_TOP_INST_SEL :: AFEC0_LV_CLK_PLL_SRC_SEL [00:00] */
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_SEL_AFEC0_LV_CLK_PLL_SRC_SEL_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_SEL_AFEC0_LV_CLK_PLL_SRC_SEL_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SDS_AFEC2X_TOP_INST_SEL_AFEC0_LV_CLK_PLL_SRC_SEL_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_SECTOP_INST_CLOCK_ENABLE - Onoff sectop inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_SECTOP_INST_CLOCK_ENABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_reserved0_MASK  0xfffffffe
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_SECTOP_INST_CLOCK_ENABLE :: SEC_XPT_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_SEC_XPT_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_SEC_XPT_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_SEC_XPT_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS :: SEC_XPT_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS_SEC_XPT_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_CLOCK_ENABLE_STATUS_SEC_XPT_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_SECTOP_INST_OBSERVE_CLOCK - Onoff sectop inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_SECTOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_SECTOP_INST_OBSERVE_CLOCK :: SECTOP_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SECTOP_INST_OBSERVE_CLOCK :: SECTOP_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SECTOP_INST_OBSERVE_CLOCK :: SECTOP_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SECTOP_INST_OBSERVE_CLOCK_SECTOP_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE - Onoff stb chan top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE :: CHAN_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_CHAN_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_CHAN_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_CHAN_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE :: CHAN_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_CHAN_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_CHAN_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_CHAN_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS :: CHAN_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS_CHAN_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS_CHAN_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS :: CHAN_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS_CHAN_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_CLOCK_ENABLE_STATUS_CHAN_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK - Onoff stb chan top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK :: CHAN_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK :: CHAN_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK :: CHAN_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_STB_CHAN_TOP_INST_OBSERVE_CLOCK_CHAN_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_SYS_CTRL_INST_CLOCK_DISABLE - Disable ONOFF_SYS_CTRL_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE :: DISABLE_SYSCTRL_UPG_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SYSCTRL_UPG_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SYSCTRL_UPG_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SYSCTRL_UPG_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE :: DISABLE_SC1_CLOCK [03:03] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SC1_CLOCK_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SC1_CLOCK_SHIFT 3
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SC1_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE :: DISABLE_SC0_CLOCK [02:02] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SC0_CLOCK_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SC0_CLOCK_SHIFT 2
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_SC0_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE :: DISABLE_AVSTOP_PVTMON_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_AVSTOP_PVTMON_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_AVSTOP_PVTMON_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_AVSTOP_PVTMON_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE :: DISABLE_AVSTOP_27_UART_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_AVSTOP_27_UART_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_AVSTOP_27_UART_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_DISABLE_AVSTOP_27_UART_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:05] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xffffffe0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 5

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS :: DISABLE_SYSCTRL_UPG_CLOCK_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_SYSCTRL_UPG_CLOCK_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_SYSCTRL_UPG_CLOCK_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS :: DISABLE_SC1_CLOCK_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_SC1_CLOCK_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_SC1_CLOCK_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS :: DISABLE_SC0_CLOCK_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_SC0_CLOCK_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_SC0_CLOCK_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS :: DISABLE_AVSTOP_PVTMON_CLOCK_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_AVSTOP_PVTMON_CLOCK_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_AVSTOP_PVTMON_CLOCK_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS :: DISABLE_AVSTOP_27_UART_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_AVSTOP_27_UART_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_DISABLE_STATUS_DISABLE_AVSTOP_27_UART_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_SYS_CTRL_INST_CLOCK_ENABLE - Onoff sys ctrl inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE :: SYS_CTRL_SCB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_SCB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_SCB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE :: SYS_CTRL_GISB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_GISB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_GISB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE :: SYS_CTRL_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE :: SYS_CTRL_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_SYS_CTRL_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS :: SYS_CTRL_SCB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_SCB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS :: SYS_CTRL_GISB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_GISB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS :: SYS_CTRL_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS :: SYS_CTRL_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_CLOCK_ENABLE_STATUS_SYS_CTRL_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK - Onoff sys ctrl inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK :: AVS_TOP_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK :: AVS_TOP_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK :: AVS_TOP_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_SYS_CTRL_INST_OBSERVE_CLOCK_AVS_TOP_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE - Onoff t2 bicm top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE :: T2R_54_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2R_54_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2R_54_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2R_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE :: T2B_PLL_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2B_PLL_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2B_PLL_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2B_PLL_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE :: T2B_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2B_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2B_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_T2B_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS :: T2R_54_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_T2R_54_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_T2R_54_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS :: T2B_PLL_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_T2B_PLL_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_T2B_PLL_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS :: T2B_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_T2B_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_T2_BICM_TOP_INST_CLOCK_ENABLE_STATUS_T2B_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE - Disable ONOFF_UFE_T2_RCVR_TOP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE :: DISABLE_UFE_T2R_TPCAP_216_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_DISABLE_UFE_T2R_TPCAP_216_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_DISABLE_UFE_T2R_TPCAP_216_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_DISABLE_UFE_T2R_TPCAP_216_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_UFE_T2R_TPCAP_216_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_UFE_T2R_TPCAP_216_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_UFE_T2R_TPCAP_216_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE - Onoff ufe t2 rcvr top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE :: UFE_T2R_TPCAP_216_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_UFE_T2R_TPCAP_216_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_UFE_T2R_TPCAP_216_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_UFE_T2R_TPCAP_216_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE :: T2R_SCB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_SCB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_SCB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE :: T2R_54_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_54_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_54_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE :: T2R_108_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_108_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_108_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_T2R_108_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS :: UFE_T2R_TPCAP_216_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_UFE_T2R_TPCAP_216_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_UFE_T2R_TPCAP_216_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS :: T2R_SCB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_T2R_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_T2R_SCB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS :: T2R_54_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_T2R_54_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_T2R_54_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS :: T2R_108_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_T2R_108_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_CLOCK_ENABLE_STATUS_T2R_108_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK - Onoff ufe t2 rcvr top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK :: UFE_ENABLE_OBSERVE_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_UFE_ENABLE_OBSERVE_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_UFE_ENABLE_OBSERVE_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_UFE_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK :: T2R_ENABLE_OBSERVE_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_T2R_ENABLE_OBSERVE_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_T2R_ENABLE_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_UFE_T2_RCVR_TOP_INST_OBSERVE_CLOCK_T2R_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_DISABLE - Disable ONOFF_USB0_TOP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_DISABLE :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_DISABLE :: DISABLE_USB0_54_MDIO_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_DISABLE_USB0_54_MDIO_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_DISABLE_USB0_54_MDIO_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_DISABLE_USB0_54_MDIO_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_USB0_54_MDIO_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_USB0_54_MDIO_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_USB0_54_MDIO_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_ENABLE - Onoff usb0 top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE :: USB0_SCB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_SCB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_SCB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE :: USB0_GISB_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_GISB_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_GISB_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE :: USB0_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_USB0_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB - Onoff usb0 top inst clock enable ahb
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB :: USB0_108_CLOCK_ENABLE_AHB [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_USB0_108_CLOCK_ENABLE_AHB_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_USB0_108_CLOCK_ENABLE_AHB_SHIFT 0
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_USB0_108_CLOCK_ENABLE_AHB_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS :: USB0_108_CLOCK_ENABLE_AHB_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS_USB0_108_CLOCK_ENABLE_AHB_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AHB_STATUS_USB0_108_CLOCK_ENABLE_AHB_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI - Onoff usb0 top inst clock enable axi
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI :: USB0_108_CLOCK_ENABLE_AXI [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_USB0_108_CLOCK_ENABLE_AXI_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_USB0_108_CLOCK_ENABLE_AXI_SHIFT 0
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_USB0_108_CLOCK_ENABLE_AXI_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS :: USB0_108_CLOCK_ENABLE_AXI_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS_USB0_108_CLOCK_ENABLE_AXI_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_AXI_STATUS_USB0_108_CLOCK_ENABLE_AXI_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS :: USB0_SCB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_USB0_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_USB0_SCB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS :: USB0_GISB_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_USB0_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_USB0_GISB_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS :: USB0_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_USB0_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_CLOCK_ENABLE_STATUS_USB0_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_USB0_TOP_INST_OBSERVE_CLOCK - Onoff usb0 top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_USB0_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:06] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xffffffc0
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 6

/* CLKGEN :: ONOFF_USB0_TOP_INST_OBSERVE_CLOCK :: USB0_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_USB0_TOP_INST_OBSERVE_CLOCK :: USB0_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_USB0_TOP_INST_OBSERVE_CLOCK :: USB0_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_USB0_TOP_INST_OBSERVE_CLOCK_USB0_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_V3D_TOP_INST_CLOCK_ENABLE - Onoff v3d top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE :: V3D_SCB_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_SCB_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_SCB_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE :: V3D_GISB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_GISB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_GISB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_GISB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE :: V3D_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE :: V3D_54_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_54_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_54_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_V3D_54_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 4

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS :: V3D_SCB_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_SCB_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS :: V3D_GISB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_GISB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_GISB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS :: V3D_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS :: V3D_54_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_54_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_ENABLE_STATUS_V3D_54_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_V3D_TOP_INST_CLOCK_SELECT - Onoff v3d top inst clock select
 ***************************************************************************/
/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_SELECT :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_SELECT_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_SELECT_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_V3D_TOP_INST_CLOCK_SELECT :: V3D_CLOCK_SELECT [00:00] */
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_SELECT_V3D_CLOCK_SELECT_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_SELECT_V3D_CLOCK_SELECT_SHIFT 0
#define BCHP_CLKGEN_ONOFF_V3D_TOP_INST_CLOCK_SELECT_V3D_CLOCK_SELECT_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE - Disable ONOFF_VEC_AIO_GFX_TOP_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE :: DISABLE_VEC_QDAC_216_CLOCK [02:02] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_QDAC_216_CLOCK_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_QDAC_216_CLOCK_SHIFT 2
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_QDAC_216_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE :: DISABLE_VEC_ITU656_0_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_ITU656_0_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_ITU656_0_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_ITU656_0_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE :: DISABLE_VEC_DACADC_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_DACADC_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_DACADC_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_DISABLE_VEC_DACADC_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:03] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffff8
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 3

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_VEC_QDAC_216_CLOCK_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_VEC_QDAC_216_CLOCK_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_VEC_QDAC_216_CLOCK_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_VEC_ITU656_0_CLOCK_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_VEC_ITU656_0_CLOCK_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_VEC_ITU656_0_CLOCK_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS :: DISABLE_VEC_DACADC_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_VEC_DACADC_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_DISABLE_STATUS_DISABLE_VEC_DACADC_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE - Onoff vec aio gfx top inst clock enable
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: reserved0 [31:14] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_reserved0_MASK 0xffffc000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_reserved0_SHIFT 14

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: VIP_SCB_CLOCK_ENABLE [13:13] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_SCB_CLOCK_ENABLE_MASK 0x00002000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_SCB_CLOCK_ENABLE_SHIFT 13
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: VEC_SCB_CLOCK_ENABLE [12:12] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_SCB_CLOCK_ENABLE_MASK 0x00001000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_SCB_CLOCK_ENABLE_SHIFT 12
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: VEC_QDAC_BVB_CLOCK_ENABLE [11:11] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_QDAC_BVB_CLOCK_ENABLE_MASK 0x00000800
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_QDAC_BVB_CLOCK_ENABLE_SHIFT 11
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_QDAC_BVB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: VEC_GISB2_CLOCK_ENABLE [10:10] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_GISB2_CLOCK_ENABLE_MASK 0x00000400
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_GISB2_CLOCK_ENABLE_SHIFT 10
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_GISB2_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: VEC_GISB0_CLOCK_ENABLE [09:09] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_GISB0_CLOCK_ENABLE_MASK 0x00000200
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_GISB0_CLOCK_ENABLE_SHIFT 9
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_GISB0_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: VEC_AIO_54_CLOCK_ENABLE [08:08] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_AIO_54_CLOCK_ENABLE_MASK 0x00000100
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_AIO_54_CLOCK_ENABLE_SHIFT 8
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_AIO_54_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: VEC_108_CLOCK_ENABLE [07:07] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_108_CLOCK_ENABLE_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_108_CLOCK_ENABLE_SHIFT 7
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_108_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: GFX_M2MC0_SCB_CLOCK_ENABLE [06:06] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_GFX_M2MC0_SCB_CLOCK_ENABLE_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_GFX_M2MC0_SCB_CLOCK_ENABLE_SHIFT 6
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_GFX_M2MC0_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: GFX_M2MC0_GISB3_CLOCK_ENABLE [05:05] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_GFX_M2MC0_GISB3_CLOCK_ENABLE_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_GFX_M2MC0_GISB3_CLOCK_ENABLE_SHIFT 5
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_GFX_M2MC0_GISB3_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: BVN_BVB_648_CLOCK_ENABLE [04:04] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_BVN_BVB_648_CLOCK_ENABLE_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_BVN_BVB_648_CLOCK_ENABLE_SHIFT 4
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_BVN_BVB_648_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: BVN_BVB_324_CLOCK_ENABLE [03:03] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_BVN_BVB_324_CLOCK_ENABLE_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_BVN_BVB_324_CLOCK_ENABLE_SHIFT 3
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_BVN_BVB_324_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: AIO_ALTERNATE_SCB_CLOCK_ENABLE [02:02] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_SCB_CLOCK_ENABLE_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_SCB_CLOCK_ENABLE_SHIFT 2
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_SCB_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: AIO_ALTERNATE_108_3_CLOCK_ENABLE [01:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_108_3_CLOCK_ENABLE_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_108_3_CLOCK_ENABLE_SHIFT 1
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_108_3_CLOCK_ENABLE_DEFAULT 0x00000001

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE :: AIO_ALTERNATE_108_2_CLOCK_ENABLE [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_108_2_CLOCK_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_108_2_CLOCK_ENABLE_SHIFT 0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_AIO_ALTERNATE_108_2_CLOCK_ENABLE_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0 - Onoff vec aio gfx top inst clock enable m2mc0
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0 :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0 :: GFX_M2MC0_CLOCK_ENABLE_M2MC0 [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_GFX_M2MC0_CLOCK_ENABLE_M2MC0_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_GFX_M2MC0_CLOCK_ENABLE_M2MC0_SHIFT 0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_GFX_M2MC0_CLOCK_ENABLE_M2MC0_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS :: GFX_M2MC0_CLOCK_ENABLE_M2MC0_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS_GFX_M2MC0_CLOCK_ENABLE_M2MC0_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_M2MC0_STATUS_GFX_M2MC0_CLOCK_ENABLE_M2MC0_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: reserved0 [31:14] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_MASK 0xffffc000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_reserved0_SHIFT 14

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: VIP_SCB_CLOCK_ENABLE_STATUS [13:13] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VIP_SCB_CLOCK_ENABLE_STATUS_MASK 0x00002000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VIP_SCB_CLOCK_ENABLE_STATUS_SHIFT 13

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: VEC_SCB_CLOCK_ENABLE_STATUS [12:12] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_SCB_CLOCK_ENABLE_STATUS_MASK 0x00001000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_SCB_CLOCK_ENABLE_STATUS_SHIFT 12

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: VEC_QDAC_BVB_CLOCK_ENABLE_STATUS [11:11] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_QDAC_BVB_CLOCK_ENABLE_STATUS_MASK 0x00000800
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_QDAC_BVB_CLOCK_ENABLE_STATUS_SHIFT 11

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: VEC_GISB2_CLOCK_ENABLE_STATUS [10:10] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_GISB2_CLOCK_ENABLE_STATUS_MASK 0x00000400
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_GISB2_CLOCK_ENABLE_STATUS_SHIFT 10

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: VEC_GISB0_CLOCK_ENABLE_STATUS [09:09] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_GISB0_CLOCK_ENABLE_STATUS_MASK 0x00000200
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_GISB0_CLOCK_ENABLE_STATUS_SHIFT 9

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: VEC_AIO_54_CLOCK_ENABLE_STATUS [08:08] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_AIO_54_CLOCK_ENABLE_STATUS_MASK 0x00000100
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_AIO_54_CLOCK_ENABLE_STATUS_SHIFT 8

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: VEC_108_CLOCK_ENABLE_STATUS [07:07] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_108_CLOCK_ENABLE_STATUS_MASK 0x00000080
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_VEC_108_CLOCK_ENABLE_STATUS_SHIFT 7

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: GFX_M2MC0_SCB_CLOCK_ENABLE_STATUS [06:06] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_GFX_M2MC0_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000040
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_GFX_M2MC0_SCB_CLOCK_ENABLE_STATUS_SHIFT 6

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: GFX_M2MC0_GISB3_CLOCK_ENABLE_STATUS [05:05] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_GFX_M2MC0_GISB3_CLOCK_ENABLE_STATUS_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_GFX_M2MC0_GISB3_CLOCK_ENABLE_STATUS_SHIFT 5

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: BVN_BVB_648_CLOCK_ENABLE_STATUS [04:04] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_BVN_BVB_648_CLOCK_ENABLE_STATUS_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_BVN_BVB_648_CLOCK_ENABLE_STATUS_SHIFT 4

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: BVN_BVB_324_CLOCK_ENABLE_STATUS [03:03] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_BVN_BVB_324_CLOCK_ENABLE_STATUS_MASK 0x00000008
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_BVN_BVB_324_CLOCK_ENABLE_STATUS_SHIFT 3

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: AIO_ALTERNATE_SCB_CLOCK_ENABLE_STATUS [02:02] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_AIO_ALTERNATE_SCB_CLOCK_ENABLE_STATUS_MASK 0x00000004
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_AIO_ALTERNATE_SCB_CLOCK_ENABLE_STATUS_SHIFT 2

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: AIO_ALTERNATE_108_3_CLOCK_ENABLE_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_AIO_ALTERNATE_108_3_CLOCK_ENABLE_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_AIO_ALTERNATE_108_3_CLOCK_ENABLE_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS :: AIO_ALTERNATE_108_2_CLOCK_ENABLE_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_AIO_ALTERNATE_108_2_CLOCK_ENABLE_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_STATUS_AIO_ALTERNATE_108_2_CLOCK_ENABLE_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC - Onoff vec aio gfx top inst clock enable vec
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC :: VEC_BVB_216_CLOCK_ENABLE_VEC [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_VEC_BVB_216_CLOCK_ENABLE_VEC_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_VEC_BVB_216_CLOCK_ENABLE_VEC_SHIFT 0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_VEC_BVB_216_CLOCK_ENABLE_VEC_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS :: VEC_BVB_216_CLOCK_ENABLE_VEC_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS_VEC_BVB_216_CLOCK_ENABLE_VEC_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VEC_STATUS_VEC_BVB_216_CLOCK_ENABLE_VEC_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP - Onoff vec aio gfx top inst clock enable vip
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP :: VIP_BVB_216_CLOCK_ENABLE_VIP [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_VIP_BVB_216_CLOCK_ENABLE_VIP_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_VIP_BVB_216_CLOCK_ENABLE_VIP_SHIFT 0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_VIP_BVB_216_CLOCK_ENABLE_VIP_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS - Clock Enable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS :: VIP_BVB_216_CLOCK_ENABLE_VIP_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS_VIP_BVB_216_CLOCK_ENABLE_VIP_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_ENABLE_VIP_STATUS_VIP_BVB_216_CLOCK_ENABLE_VIP_STATUS_SHIFT 0

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT - Onoff vec aio gfx top inst clock select
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT :: reserved0 [31:01] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT_reserved0_MASK 0xfffffffe
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT_reserved0_SHIFT 1

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT :: GFX_M2MC0_CLOCK_SELECT [00:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT_GFX_M2MC0_CLOCK_SELECT_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT_GFX_M2MC0_CLOCK_SELECT_SHIFT 0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_CLOCK_SELECT_GFX_M2MC0_CLOCK_SELECT_DEFAULT 0x00000001

/***************************************************************************
 *ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK - Onoff vec aio gfx top inst observe clock
 ***************************************************************************/
/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: reserved0 [31:18] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_reserved0_MASK 0xfffc0000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_reserved0_SHIFT 18

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: VEC_ENABLE_OBSERVE_CLOCK [17:17] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_ENABLE_OBSERVE_CLOCK_MASK 0x00020000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_ENABLE_OBSERVE_CLOCK_SHIFT 17
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: VEC_ENABLE_DIVIDER_OBSERVE_CLOCK [16:16] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00010000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 16
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: VEC_CONTROL_OBSERVE_CLOCK [15:12] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_CONTROL_OBSERVE_CLOCK_MASK 0x0000f000
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_CONTROL_OBSERVE_CLOCK_SHIFT 12
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_VEC_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: GFX_ENABLE_OBSERVE_CLOCK [11:11] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_ENABLE_OBSERVE_CLOCK_MASK 0x00000800
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_ENABLE_OBSERVE_CLOCK_SHIFT 11
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: GFX_ENABLE_DIVIDER_OBSERVE_CLOCK [10:10] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000400
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 10
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: GFX_CONTROL_OBSERVE_CLOCK [09:06] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_CONTROL_OBSERVE_CLOCK_MASK 0x000003c0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_CONTROL_OBSERVE_CLOCK_SHIFT 6
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_GFX_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: AIO_ENABLE_OBSERVE_CLOCK [05:05] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_ENABLE_OBSERVE_CLOCK_MASK 0x00000020
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_ENABLE_OBSERVE_CLOCK_SHIFT 5
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_ENABLE_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: AIO_ENABLE_DIVIDER_OBSERVE_CLOCK [04:04] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_ENABLE_DIVIDER_OBSERVE_CLOCK_MASK 0x00000010
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_ENABLE_DIVIDER_OBSERVE_CLOCK_SHIFT 4
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_ENABLE_DIVIDER_OBSERVE_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK :: AIO_CONTROL_OBSERVE_CLOCK [03:00] */
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_CONTROL_OBSERVE_CLOCK_MASK 0x0000000f
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_CONTROL_OBSERVE_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_VEC_AIO_GFX_TOP_INST_OBSERVE_CLOCK_AIO_CONTROL_OBSERVE_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE - Disable ONOFF_XPT_TSIO_WRAPPER_INST's clocks
 ***************************************************************************/
/* CLKGEN :: ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE :: DISABLE_TSIO_405_CLOCK [01:01] */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_DISABLE_TSIO_405_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_DISABLE_TSIO_405_CLOCK_SHIFT 1
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_DISABLE_TSIO_405_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE :: DISABLE_TSIO_216_CLOCK [00:00] */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_DISABLE_TSIO_216_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_DISABLE_TSIO_216_CLOCK_SHIFT 0
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_DISABLE_TSIO_216_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS_reserved0_MASK 0xfffffffc
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS_reserved0_SHIFT 2

/* CLKGEN :: ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS :: DISABLE_TSIO_405_CLOCK_STATUS [01:01] */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS_DISABLE_TSIO_405_CLOCK_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS_DISABLE_TSIO_405_CLOCK_STATUS_SHIFT 1

/* CLKGEN :: ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS :: DISABLE_TSIO_216_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS_DISABLE_TSIO_216_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_ONOFF_XPT_TSIO_WRAPPER_INST_CLOCK_DISABLE_STATUS_DISABLE_TSIO_216_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *PAD_CLK_OUT0_OBSERVATION - Select observation clk
 ***************************************************************************/
/* CLKGEN :: PAD_CLK_OUT0_OBSERVATION :: reserved0 [31:09] */
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_reserved0_MASK        0xfffffe00
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_reserved0_SHIFT       9

/* CLKGEN :: PAD_CLK_OUT0_OBSERVATION :: SELECT_OBSERVE_CLK [08:08] */
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_SELECT_OBSERVE_CLK_MASK 0x00000100
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_SELECT_OBSERVE_CLK_SHIFT 8
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_SELECT_OBSERVE_CLK_DEFAULT 0x00000000

/* CLKGEN :: PAD_CLK_OUT0_OBSERVATION :: OBSERVE_MUX_SELECT [07:01] */
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_OBSERVE_MUX_SELECT_MASK 0x000000fe
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_OBSERVE_MUX_SELECT_SHIFT 1
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_OBSERVE_MUX_SELECT_DEFAULT 0x00000000

/* CLKGEN :: PAD_CLK_OUT0_OBSERVATION :: OBSERVE_DIV_ENABLE [00:00] */
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_OBSERVE_DIV_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_OBSERVE_DIV_ENABLE_SHIFT 0
#define BCHP_CLKGEN_PAD_CLK_OUT0_OBSERVATION_OBSERVE_DIV_ENABLE_DEFAULT 0x00000000

/***************************************************************************
 *PAD_CLK_OUT1_OBSERVATION - Select observation clk
 ***************************************************************************/
/* CLKGEN :: PAD_CLK_OUT1_OBSERVATION :: reserved0 [31:09] */
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_reserved0_MASK        0xfffffe00
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_reserved0_SHIFT       9

/* CLKGEN :: PAD_CLK_OUT1_OBSERVATION :: SELECT_OBSERVE_CLK [08:08] */
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_SELECT_OBSERVE_CLK_MASK 0x00000100
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_SELECT_OBSERVE_CLK_SHIFT 8
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_SELECT_OBSERVE_CLK_DEFAULT 0x00000000

/* CLKGEN :: PAD_CLK_OUT1_OBSERVATION :: OBSERVE_MUX_SELECT [07:01] */
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_OBSERVE_MUX_SELECT_MASK 0x000000fe
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_OBSERVE_MUX_SELECT_SHIFT 1
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_OBSERVE_MUX_SELECT_DEFAULT 0x00000000

/* CLKGEN :: PAD_CLK_OUT1_OBSERVATION :: OBSERVE_DIV_ENABLE [00:00] */
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_OBSERVE_DIV_ENABLE_MASK 0x00000001
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_OBSERVE_DIV_ENABLE_SHIFT 0
#define BCHP_CLKGEN_PAD_CLK_OUT1_OBSERVATION_OBSERVE_DIV_ENABLE_DEFAULT 0x00000000

/***************************************************************************
 *PAD_CLOCK_DISABLE - Disable PAD's clocks
 ***************************************************************************/
/* CLKGEN :: PAD_CLOCK_DISABLE :: reserved0 [31:02] */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_reserved0_MASK               0xfffffffc
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_reserved0_SHIFT              2

/* CLKGEN :: PAD_CLOCK_DISABLE :: DISABLE_PAD_OUTPUT_CLK_OUT1_CLOCK [01:01] */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_DISABLE_PAD_OUTPUT_CLK_OUT1_CLOCK_MASK 0x00000002
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_DISABLE_PAD_OUTPUT_CLK_OUT1_CLOCK_SHIFT 1
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_DISABLE_PAD_OUTPUT_CLK_OUT1_CLOCK_DEFAULT 0x00000000

/* CLKGEN :: PAD_CLOCK_DISABLE :: DISABLE_PAD_OUTPUT_CLK_OUT0_CLOCK [00:00] */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_DISABLE_PAD_OUTPUT_CLK_OUT0_CLOCK_MASK 0x00000001
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_DISABLE_PAD_OUTPUT_CLK_OUT0_CLOCK_SHIFT 0
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_DISABLE_PAD_OUTPUT_CLK_OUT0_CLOCK_DEFAULT 0x00000000

/***************************************************************************
 *PAD_CLOCK_DISABLE_STATUS - Clock Disable Status
 ***************************************************************************/
/* CLKGEN :: PAD_CLOCK_DISABLE_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PAD_CLOCK_DISABLE_STATUS :: DISABLE_PAD_OUTPUT_CLK_OUT1_CLOCK_STATUS [01:01] */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_STATUS_DISABLE_PAD_OUTPUT_CLK_OUT1_CLOCK_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_STATUS_DISABLE_PAD_OUTPUT_CLK_OUT1_CLOCK_STATUS_SHIFT 1

/* CLKGEN :: PAD_CLOCK_DISABLE_STATUS :: DISABLE_PAD_OUTPUT_CLK_OUT0_CLOCK_STATUS [00:00] */
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_STATUS_DISABLE_PAD_OUTPUT_CLK_OUT0_CLOCK_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PAD_CLOCK_DISABLE_STATUS_DISABLE_PAD_OUTPUT_CLK_OUT0_CLOCK_STATUS_SHIFT 0

/***************************************************************************
 *PAD_MUX_SELECT - Mux selects for Pad clocks
 ***************************************************************************/
/* CLKGEN :: PAD_MUX_SELECT :: reserved0 [31:01] */
#define BCHP_CLKGEN_PAD_MUX_SELECT_reserved0_MASK                  0xfffffffe
#define BCHP_CLKGEN_PAD_MUX_SELECT_reserved0_SHIFT                 1

/* CLKGEN :: PAD_MUX_SELECT :: PAD_OUTPUT_SC_CLOCK [00:00] */
#define BCHP_CLKGEN_PAD_MUX_SELECT_PAD_OUTPUT_SC_CLOCK_MASK        0x00000001
#define BCHP_CLKGEN_PAD_MUX_SELECT_PAD_OUTPUT_SC_CLOCK_SHIFT       0
#define BCHP_CLKGEN_PAD_MUX_SELECT_PAD_OUTPUT_SC_CLOCK_DEFAULT     0x00000000

/***************************************************************************
 *PLL_AVX_PLL_RESET_STATUS - PLL_AVX Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_AVX_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_AVX_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_AVX_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_AVX_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_reserved0_MASK          0xfffffc00
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_reserved0_SHIFT         10

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: PLL_AVX_CHANNEL4_FREQ_DISABLE_RDB_MACRO [09:09] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL4_FREQ_DISABLE_RDB_MACRO_MASK 0x00000200
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL4_FREQ_DISABLE_RDB_MACRO_SHIFT 9
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL4_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: PLL_AVX_CHANNEL3_FREQ_DISABLE_RDB_MACRO [08:08] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL3_FREQ_DISABLE_RDB_MACRO_MASK 0x00000100
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL3_FREQ_DISABLE_RDB_MACRO_SHIFT 8
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL3_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: PLL_AVX_CHANNEL2_FREQ_DISABLE_RDB_MACRO [07:07] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL2_FREQ_DISABLE_RDB_MACRO_MASK 0x00000080
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL2_FREQ_DISABLE_RDB_MACRO_SHIFT 7
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL2_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: PLL_AVX_CHANNEL1_FREQ_DISABLE_RDB_MACRO [06:06] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL1_FREQ_DISABLE_RDB_MACRO_MASK 0x00000040
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL1_FREQ_DISABLE_RDB_MACRO_SHIFT 6
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL1_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: PLL_AVX_CHANNEL0_FREQ_DISABLE_RDB_MACRO [05:05] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL0_FREQ_DISABLE_RDB_MACRO_MASK 0x00000020
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL0_FREQ_DISABLE_RDB_MACRO_SHIFT 5
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_PLL_AVX_CHANNEL0_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: CHANNEL4_FREQ [04:04] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL4_FREQ_MASK      0x00000010
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL4_FREQ_SHIFT     4
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL4_FREQ_DEFAULT   0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: CHANNEL3_FREQ [03:03] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL3_FREQ_MASK      0x00000008
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL3_FREQ_SHIFT     3
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL3_FREQ_DEFAULT   0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: CHANNEL2_FREQ [02:02] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL2_FREQ_MASK      0x00000004
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL2_FREQ_SHIFT     2
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL2_FREQ_DEFAULT   0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: CHANNEL1_FREQ [01:01] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL1_FREQ_MASK      0x00000002
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL1_FREQ_SHIFT     1
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL1_FREQ_DEFAULT   0x00000000

/* CLKGEN :: PLL_AVX_RDB_MACRO_CTRL :: CHANNEL0_FREQ [00:00] */
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL0_FREQ_MASK      0x00000001
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL0_FREQ_SHIFT     0
#define BCHP_CLKGEN_PLL_AVX_RDB_MACRO_CTRL_CHANNEL0_FREQ_DEFAULT   0x00000000

/***************************************************************************
 *PLL_CPU_GLITCHLESS_SWITCH_REQUEST - PLL_CPU Glitchless Clock Switching
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_GLITCHLESS_SWITCH_REQUEST :: reserved0 [31:09] */
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_reserved0_MASK 0xfffffe00
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_reserved0_SHIFT 9

/* CLKGEN :: PLL_CPU_GLITCHLESS_SWITCH_REQUEST :: TRANSACTION_WAIT [08:01] */
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_TRANSACTION_WAIT_MASK 0x000001fe
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_TRANSACTION_WAIT_SHIFT 1
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_TRANSACTION_WAIT_DEFAULT 0x0000001f

/* CLKGEN :: PLL_CPU_GLITCHLESS_SWITCH_REQUEST :: PLL_BYPASS_REQUEST [00:00] */
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_PLL_BYPASS_REQUEST_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_PLL_BYPASS_REQUEST_SHIFT 0
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_REQUEST_PLL_BYPASS_REQUEST_DEFAULT 0x00000000

/***************************************************************************
 *PLL_CPU_GLITCHLESS_SWITCH_STATUS - PLL_CPU Glitchless Switching
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_GLITCHLESS_SWITCH_STATUS :: reserved0 [31:04] */
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_STATUS_reserved0_MASK 0xfffffff0
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_STATUS_reserved0_SHIFT 4

/* CLKGEN :: PLL_CPU_GLITCHLESS_SWITCH_STATUS :: PLL_BYPASS_STATUS [03:00] */
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_STATUS_PLL_BYPASS_STATUS_MASK 0x0000000f
#define BCHP_CLKGEN_PLL_CPU_GLITCHLESS_SWITCH_STATUS_PLL_BYPASS_STATUS_SHIFT 0

/***************************************************************************
 *PLL_CPU_PLL_RESET_STATUS - PLL_CPU Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_CPU_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_CPU_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_CPU_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_CPU_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_CPU_RDB_MACRO_CTRL :: reserved0 [31:03] */
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_reserved0_MASK          0xfffffff8
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_reserved0_SHIFT         3

/* CLKGEN :: PLL_CPU_RDB_MACRO_CTRL :: PLL_CPU_OPTIONS_DISABLE_RDB_MACRO [02:02] */
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_PLL_CPU_OPTIONS_DISABLE_RDB_MACRO_MASK 0x00000004
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_PLL_CPU_OPTIONS_DISABLE_RDB_MACRO_SHIFT 2
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_PLL_CPU_OPTIONS_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_CPU_RDB_MACRO_CTRL :: OPTIONS [01:00] */
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_OPTIONS_MASK            0x00000003
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_OPTIONS_SHIFT           0
#define BCHP_CLKGEN_PLL_CPU_RDB_MACRO_CTRL_OPTIONS_DEFAULT         0x00000000

/***************************************************************************
 *PLL_DTT_PLL_RESET_STATUS - PLL_DTT Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_DTT_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_DTT_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_DTT_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_DTT_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_DTT_RDB_MACRO_CTRL :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_reserved0_MASK          0xfffffffc
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_reserved0_SHIFT         2

/* CLKGEN :: PLL_DTT_RDB_MACRO_CTRL :: PLL_DTT_OPTIONS_DISABLE_RDB_MACRO [01:01] */
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_PLL_DTT_OPTIONS_DISABLE_RDB_MACRO_MASK 0x00000002
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_PLL_DTT_OPTIONS_DISABLE_RDB_MACRO_SHIFT 1
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_PLL_DTT_OPTIONS_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_DTT_RDB_MACRO_CTRL :: OPTIONS [00:00] */
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_OPTIONS_MASK            0x00000001
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_OPTIONS_SHIFT           0
#define BCHP_CLKGEN_PLL_DTT_RDB_MACRO_CTRL_OPTIONS_DEFAULT         0x00000000

/***************************************************************************
 *PLL_LC_PLL_RESET_STATUS - PLL_LC Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_LC_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_STATUS_reserved0_MASK         0xfffffffc
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_STATUS_reserved0_SHIFT        2

/* CLKGEN :: PLL_LC_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_LC_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_LC_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_LC_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_LC_RDB_MACRO_CTRL :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_reserved0_MASK           0xfffffffc
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_reserved0_SHIFT          2

/* CLKGEN :: PLL_LC_RDB_MACRO_CTRL :: PLL_LC_CHANNEL2_FREQ_DISABLE_RDB_MACRO [01:01] */
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_PLL_LC_CHANNEL2_FREQ_DISABLE_RDB_MACRO_MASK 0x00000002
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_PLL_LC_CHANNEL2_FREQ_DISABLE_RDB_MACRO_SHIFT 1
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_PLL_LC_CHANNEL2_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_LC_RDB_MACRO_CTRL :: CHANNEL2_FREQ [00:00] */
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_CHANNEL2_FREQ_MASK       0x00000001
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_CHANNEL2_FREQ_SHIFT      0
#define BCHP_CLKGEN_PLL_LC_RDB_MACRO_CTRL_CHANNEL2_FREQ_DEFAULT    0x00000000

/***************************************************************************
 *PLL_MOCA_PLL_RESET_STATUS - PLL_MOCA Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_STATUS_reserved0_MASK       0xfffffffc
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_STATUS_reserved0_SHIFT      2

/* CLKGEN :: PLL_MOCA_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_MOCA_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_MOCA_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_MOCA_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_MOCA_RDB_MACRO_CTRL :: reserved0 [31:06] */
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_reserved0_MASK         0xffffffc0
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_reserved0_SHIFT        6

/* CLKGEN :: PLL_MOCA_RDB_MACRO_CTRL :: PLL_MOCA_CHANNEL1_FREQ_DISABLE_RDB_MACRO [05:05] */
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_PLL_MOCA_CHANNEL1_FREQ_DISABLE_RDB_MACRO_MASK 0x00000020
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_PLL_MOCA_CHANNEL1_FREQ_DISABLE_RDB_MACRO_SHIFT 5
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_PLL_MOCA_CHANNEL1_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_RDB_MACRO_CTRL :: PLL_MOCA_CHANNEL0_FREQ_DISABLE_RDB_MACRO [04:04] */
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_PLL_MOCA_CHANNEL0_FREQ_DISABLE_RDB_MACRO_MASK 0x00000010
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_PLL_MOCA_CHANNEL0_FREQ_DISABLE_RDB_MACRO_SHIFT 4
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_PLL_MOCA_CHANNEL0_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_MOCA_RDB_MACRO_CTRL :: CHANNEL1_FREQ [03:02] */
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_CHANNEL1_FREQ_MASK     0x0000000c
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_CHANNEL1_FREQ_SHIFT    2
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_CHANNEL1_FREQ_DEFAULT  0x00000000

/* CLKGEN :: PLL_MOCA_RDB_MACRO_CTRL :: CHANNEL0_FREQ [01:00] */
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_CHANNEL0_FREQ_MASK     0x00000003
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_CHANNEL0_FREQ_SHIFT    0
#define BCHP_CLKGEN_PLL_MOCA_RDB_MACRO_CTRL_CHANNEL0_FREQ_DEFAULT  0x00000000

/***************************************************************************
 *PLL_NETWORK_PLL_RESET_STATUS - PLL_NETWORK Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_STATUS_reserved0_MASK    0xfffffffc
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_STATUS_reserved0_SHIFT   2

/* CLKGEN :: PLL_NETWORK_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_NETWORK_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_NETWORK_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_NETWORK_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_NETWORK_RDB_MACRO_CTRL :: reserved0 [31:06] */
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_reserved0_MASK      0xffffffc0
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_reserved0_SHIFT     6

/* CLKGEN :: PLL_NETWORK_RDB_MACRO_CTRL :: PLL_NETWORK_CHANNEL4_FREQ_DISABLE_RDB_MACRO [05:05] */
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_PLL_NETWORK_CHANNEL4_FREQ_DISABLE_RDB_MACRO_MASK 0x00000020
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_PLL_NETWORK_CHANNEL4_FREQ_DISABLE_RDB_MACRO_SHIFT 5
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_PLL_NETWORK_CHANNEL4_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_RDB_MACRO_CTRL :: PLL_NETWORK_CHANNEL3_FREQ_DISABLE_RDB_MACRO [04:04] */
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_PLL_NETWORK_CHANNEL3_FREQ_DISABLE_RDB_MACRO_MASK 0x00000010
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_PLL_NETWORK_CHANNEL3_FREQ_DISABLE_RDB_MACRO_SHIFT 4
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_PLL_NETWORK_CHANNEL3_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_RDB_MACRO_CTRL :: CHANNEL4_FREQ [03:02] */
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_CHANNEL4_FREQ_MASK  0x0000000c
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_CHANNEL4_FREQ_SHIFT 2
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_CHANNEL4_FREQ_DEFAULT 0x00000000

/* CLKGEN :: PLL_NETWORK_RDB_MACRO_CTRL :: CHANNEL3_FREQ [01:00] */
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_CHANNEL3_FREQ_MASK  0x00000003
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_CHANNEL3_FREQ_SHIFT 0
#define BCHP_CLKGEN_PLL_NETWORK_RDB_MACRO_CTRL_CHANNEL3_FREQ_DEFAULT 0x00000000

/***************************************************************************
 *PLL_RAAGA_PLL_RESET_STATUS - PLL_RAAGA Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_STATUS_reserved0_MASK      0xfffffffc
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_STATUS_reserved0_SHIFT     2

/* CLKGEN :: PLL_RAAGA_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_RAAGA_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_RAAGA_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_RAAGA_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_RAAGA_RDB_MACRO_CTRL :: reserved0 [31:03] */
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_reserved0_MASK        0xfffffff8
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_reserved0_SHIFT       3

/* CLKGEN :: PLL_RAAGA_RDB_MACRO_CTRL :: PLL_RAAGA_OPTIONS_DISABLE_RDB_MACRO [02:02] */
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_PLL_RAAGA_OPTIONS_DISABLE_RDB_MACRO_MASK 0x00000004
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_PLL_RAAGA_OPTIONS_DISABLE_RDB_MACRO_SHIFT 2
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_PLL_RAAGA_OPTIONS_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_RAAGA_RDB_MACRO_CTRL :: OPTIONS [01:00] */
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_OPTIONS_MASK          0x00000003
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_OPTIONS_SHIFT         0
#define BCHP_CLKGEN_PLL_RAAGA_RDB_MACRO_CTRL_OPTIONS_DEFAULT       0x00000000

/***************************************************************************
 *PLL_SC0_PLL_RESET_STATUS - PLL_SC0 Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_SC0_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_SC0_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SC0_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_SC0_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_SC0_RDB_MACRO_CTRL :: reserved0 [31:05] */
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_reserved0_MASK          0xffffffe0
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_reserved0_SHIFT         5

/* CLKGEN :: PLL_SC0_RDB_MACRO_CTRL :: PLL_SC0_OPTIONS_DISABLE_RDB_MACRO [04:04] */
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_PLL_SC0_OPTIONS_DISABLE_RDB_MACRO_MASK 0x00000010
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_PLL_SC0_OPTIONS_DISABLE_RDB_MACRO_SHIFT 4
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_PLL_SC0_OPTIONS_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC0_RDB_MACRO_CTRL :: OPTIONS [03:00] */
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_OPTIONS_MASK            0x0000000f
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_OPTIONS_SHIFT           0
#define BCHP_CLKGEN_PLL_SC0_RDB_MACRO_CTRL_OPTIONS_DEFAULT         0x00000000

/***************************************************************************
 *PLL_SC1_PLL_RESET_STATUS - PLL_SC1 Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_STATUS_reserved0_MASK        0xfffffffc
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_STATUS_reserved0_SHIFT       2

/* CLKGEN :: PLL_SC1_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_SC1_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_SC1_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_SC1_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_SC1_RDB_MACRO_CTRL :: reserved0 [31:05] */
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_reserved0_MASK          0xffffffe0
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_reserved0_SHIFT         5

/* CLKGEN :: PLL_SC1_RDB_MACRO_CTRL :: PLL_SC1_OPTIONS_DISABLE_RDB_MACRO [04:04] */
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_PLL_SC1_OPTIONS_DISABLE_RDB_MACRO_MASK 0x00000010
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_PLL_SC1_OPTIONS_DISABLE_RDB_MACRO_SHIFT 4
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_PLL_SC1_OPTIONS_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_SC1_RDB_MACRO_CTRL :: OPTIONS [03:00] */
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_OPTIONS_MASK            0x0000000f
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_OPTIONS_SHIFT           0
#define BCHP_CLKGEN_PLL_SC1_RDB_MACRO_CTRL_OPTIONS_DEFAULT         0x00000000

/***************************************************************************
 *PLL_STRAP_OVERRIDE - Disable
 ***************************************************************************/
/* CLKGEN :: PLL_STRAP_OVERRIDE :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_reserved0_MASK              0xfffffffc
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_reserved0_SHIFT             2

/* CLKGEN :: PLL_STRAP_OVERRIDE :: STRAP_HIFSPI_DISABLE [01:01] */
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_STRAP_HIFSPI_DISABLE_MASK   0x00000002
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_STRAP_HIFSPI_DISABLE_SHIFT  1
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_STRAP_HIFSPI_DISABLE_DEFAULT 0x00000000

/* CLKGEN :: PLL_STRAP_OVERRIDE :: STRAP_FREQ_PLLMIPS_DISABLE [00:00] */
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_STRAP_FREQ_PLLMIPS_DISABLE_MASK 0x00000001
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_STRAP_FREQ_PLLMIPS_DISABLE_SHIFT 0
#define BCHP_CLKGEN_PLL_STRAP_OVERRIDE_STRAP_FREQ_PLLMIPS_DISABLE_DEFAULT 0x00000000

/***************************************************************************
 *PLL_SYS0_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_SYS0_RDB_MACRO_CTRL :: reserved0 [31:10] */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_reserved0_MASK         0xfffffc00
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_reserved0_SHIFT        10

/* CLKGEN :: PLL_SYS0_RDB_MACRO_CTRL :: PLL_SYS0_CHANNEL5_FREQ_DISABLE_RDB_MACRO [09:09] */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL5_FREQ_DISABLE_RDB_MACRO_MASK 0x00000200
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL5_FREQ_DISABLE_RDB_MACRO_SHIFT 9
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL5_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_RDB_MACRO_CTRL :: PLL_SYS0_CHANNEL4_FREQ_DISABLE_RDB_MACRO [08:08] */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL4_FREQ_DISABLE_RDB_MACRO_MASK 0x00000100
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL4_FREQ_DISABLE_RDB_MACRO_SHIFT 8
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL4_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_RDB_MACRO_CTRL :: PLL_SYS0_CHANNEL1_FREQ_DISABLE_RDB_MACRO [07:07] */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL1_FREQ_DISABLE_RDB_MACRO_MASK 0x00000080
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL1_FREQ_DISABLE_RDB_MACRO_SHIFT 7
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_PLL_SYS0_CHANNEL1_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS0_RDB_MACRO_CTRL :: CHANNEL3_FREQ [06:05] */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL3_FREQ_MASK     0x00000060
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL3_FREQ_SHIFT    5
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL3_FREQ_DEFAULT  0x00000000

/* CLKGEN :: PLL_SYS0_RDB_MACRO_CTRL :: CHANNEL2_FREQ [04:03] */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL2_FREQ_MASK     0x00000018
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL2_FREQ_SHIFT    3
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL2_FREQ_DEFAULT  0x00000000

/* CLKGEN :: PLL_SYS0_RDB_MACRO_CTRL :: CHANNEL1_FREQ [02:00] */
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL1_FREQ_MASK     0x00000007
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL1_FREQ_SHIFT    0
#define BCHP_CLKGEN_PLL_SYS0_RDB_MACRO_CTRL_CHANNEL1_FREQ_DEFAULT  0x00000000

/***************************************************************************
 *PLL_SYS1_RDB_MACRO_CTRL - PLL RDB Macro Disable
 ***************************************************************************/
/* CLKGEN :: PLL_SYS1_RDB_MACRO_CTRL :: reserved0 [31:06] */
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_reserved0_MASK         0xffffffc0
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_reserved0_SHIFT        6

/* CLKGEN :: PLL_SYS1_RDB_MACRO_CTRL :: PLL_SYS1_CHANNEL4_FREQ_DISABLE_RDB_MACRO [05:05] */
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_PLL_SYS1_CHANNEL4_FREQ_DISABLE_RDB_MACRO_MASK 0x00000020
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_PLL_SYS1_CHANNEL4_FREQ_DISABLE_RDB_MACRO_SHIFT 5
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_PLL_SYS1_CHANNEL4_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_RDB_MACRO_CTRL :: PLL_SYS1_CHANNEL2_FREQ_DISABLE_RDB_MACRO [04:04] */
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_PLL_SYS1_CHANNEL2_FREQ_DISABLE_RDB_MACRO_MASK 0x00000010
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_PLL_SYS1_CHANNEL2_FREQ_DISABLE_RDB_MACRO_SHIFT 4
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_PLL_SYS1_CHANNEL2_FREQ_DISABLE_RDB_MACRO_DEFAULT 0x00000000

/* CLKGEN :: PLL_SYS1_RDB_MACRO_CTRL :: CHANNEL4_FREQ [03:02] */
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_CHANNEL4_FREQ_MASK     0x0000000c
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_CHANNEL4_FREQ_SHIFT    2
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_CHANNEL4_FREQ_DEFAULT  0x00000000

/* CLKGEN :: PLL_SYS1_RDB_MACRO_CTRL :: CHANNEL2_FREQ [01:00] */
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_CHANNEL2_FREQ_MASK     0x00000003
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_CHANNEL2_FREQ_SHIFT    0
#define BCHP_CLKGEN_PLL_SYS1_RDB_MACRO_CTRL_CHANNEL2_FREQ_DEFAULT  0x00000000

/***************************************************************************
 *PLL_VCXO0_PLL_RESET_STATUS - PLL_VCXO0 Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO0_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_STATUS_reserved0_MASK      0xfffffffc
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_STATUS_reserved0_SHIFT     2

/* CLKGEN :: PLL_VCXO0_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_VCXO0_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO0_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PLL_VCXO1_PLL_RESET_STATUS - PLL_VCXO1 Reset Status
 ***************************************************************************/
/* CLKGEN :: PLL_VCXO1_PLL_RESET_STATUS :: reserved0 [31:02] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_STATUS_reserved0_MASK      0xfffffffc
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_STATUS_reserved0_SHIFT     2

/* CLKGEN :: PLL_VCXO1_PLL_RESET_STATUS :: PLL_DRESET_STATUS [01:01] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_STATUS_PLL_DRESET_STATUS_MASK 0x00000002
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_STATUS_PLL_DRESET_STATUS_SHIFT 1

/* CLKGEN :: PLL_VCXO1_PLL_RESET_STATUS :: PLL_ARESET_STATUS [00:00] */
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_STATUS_PLL_ARESET_STATUS_MASK 0x00000001
#define BCHP_CLKGEN_PLL_VCXO1_PLL_RESET_STATUS_PLL_ARESET_STATUS_SHIFT 0

/***************************************************************************
 *PM_CLOCK_108_ALIVE_SEL - Select clocks that can stay alive during power management standby mode.
 ***************************************************************************/
/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: reserved0 [31:07] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_reserved0_MASK          0xffffff80
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_reserved0_SHIFT         7

/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: CLOCK_108_CG_SDS0 [06:06] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_SDS0_MASK  0x00000040
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_SDS0_SHIFT 6
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_SDS0_DEFAULT 0x00000000

/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: CLOCK_108_CG_MDAC [05:05] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_MDAC_MASK  0x00000020
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_MDAC_SHIFT 5
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_MDAC_DEFAULT 0x00000000

/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: CLOCK_108_CG_LEAP [04:04] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_LEAP_MASK  0x00000010
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_LEAP_SHIFT 4
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_LEAP_DEFAULT 0x00000000

/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: CLOCK_108_CG_FSK [03:03] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_FSK_MASK   0x00000008
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_FSK_SHIFT  3
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_FSK_DEFAULT 0x00000000

/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: CLOCK_108_CG_CHAN [02:02] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_CHAN_MASK  0x00000004
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_CHAN_SHIFT 2
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_CHAN_DEFAULT 0x00000000

/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: CLOCK_108_CG_AIF0 [01:01] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_AIF0_MASK  0x00000002
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_AIF0_SHIFT 1
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_AIF0_DEFAULT 0x00000000

/* CLKGEN :: PM_CLOCK_108_ALIVE_SEL :: CLOCK_108_CG_AFEC0 [00:00] */
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_AFEC0_MASK 0x00000001
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_AFEC0_SHIFT 0
#define BCHP_CLKGEN_PM_CLOCK_108_ALIVE_SEL_CLOCK_108_CG_AFEC0_DEFAULT 0x00000000

/***************************************************************************
 *PM_CLOCK_216_ALIVE_SEL - Select clocks that can stay alive during power management standby mode.
 ***************************************************************************/
/* CLKGEN :: PM_CLOCK_216_ALIVE_SEL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PM_CLOCK_216_ALIVE_SEL_reserved0_MASK          0xfffffffe
#define BCHP_CLKGEN_PM_CLOCK_216_ALIVE_SEL_reserved0_SHIFT         1

/* CLKGEN :: PM_CLOCK_216_ALIVE_SEL :: CLOCK_216_CG_LEAP [00:00] */
#define BCHP_CLKGEN_PM_CLOCK_216_ALIVE_SEL_CLOCK_216_CG_LEAP_MASK  0x00000001
#define BCHP_CLKGEN_PM_CLOCK_216_ALIVE_SEL_CLOCK_216_CG_LEAP_SHIFT 0
#define BCHP_CLKGEN_PM_CLOCK_216_ALIVE_SEL_CLOCK_216_CG_LEAP_DEFAULT 0x00000000

/***************************************************************************
 *PM_CLOCK_Async_ALIVE_SEL - Select clocks that can stay alive during power management standby mode.
 ***************************************************************************/
/* CLKGEN :: PM_CLOCK_Async_ALIVE_SEL :: reserved0 [31:01] */
#define BCHP_CLKGEN_PM_CLOCK_Async_ALIVE_SEL_reserved0_MASK        0xfffffffe
#define BCHP_CLKGEN_PM_CLOCK_Async_ALIVE_SEL_reserved0_SHIFT       1

/* CLKGEN :: PM_CLOCK_Async_ALIVE_SEL :: CLOCK_Async_CG_XPT [00:00] */
#define BCHP_CLKGEN_PM_CLOCK_Async_ALIVE_SEL_CLOCK_Async_CG_XPT_MASK 0x00000001
#define BCHP_CLKGEN_PM_CLOCK_Async_ALIVE_SEL_CLOCK_Async_CG_XPT_SHIFT 0
#define BCHP_CLKGEN_PM_CLOCK_Async_ALIVE_SEL_CLOCK_Async_CG_XPT_DEFAULT 0x00000000

/***************************************************************************
 *PM_CLOCK_Gisb_ALIVE_SEL - Select clocks that can stay alive during power management standby mode.
 ***************************************************************************/
/* CLKGEN :: PM_CLOCK_Gisb_ALIVE_SEL :: reserved0 [31:02] */
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_reserved0_MASK         0xfffffffc
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_reserved0_SHIFT        2

/* CLKGEN :: PM_CLOCK_Gisb_ALIVE_SEL :: CLOCK_Gisb_CG_LEAP [01:01] */
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_CLOCK_Gisb_CG_LEAP_MASK 0x00000002
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_CLOCK_Gisb_CG_LEAP_SHIFT 1
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_CLOCK_Gisb_CG_LEAP_DEFAULT 0x00000000

/* CLKGEN :: PM_CLOCK_Gisb_ALIVE_SEL :: CLOCK_Gisb_CG_CHAN [00:00] */
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_CLOCK_Gisb_CG_CHAN_MASK 0x00000001
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_CLOCK_Gisb_CG_CHAN_SHIFT 0
#define BCHP_CLKGEN_PM_CLOCK_Gisb_ALIVE_SEL_CLOCK_Gisb_CG_CHAN_DEFAULT 0x00000000

/***************************************************************************
 *PM_PLL_ALIVE_SEL - PLL Alive in Standby Mode
 ***************************************************************************/
/* CLKGEN :: PM_PLL_ALIVE_SEL :: reserved0 [31:04] */
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_reserved0_MASK                0xfffffff0
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_reserved0_SHIFT               4

/* CLKGEN :: PM_PLL_ALIVE_SEL :: memsys0_PLL [03:03] */
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_memsys0_PLL_MASK              0x00000008
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_memsys0_PLL_SHIFT             3
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_memsys0_PLL_DEFAULT           0x00000000

/* CLKGEN :: PM_PLL_ALIVE_SEL :: PLL_SYS1 [02:02] */
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_SYS1_MASK                 0x00000004
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_SYS1_SHIFT                2
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_SYS1_DEFAULT              0x00000000

/* CLKGEN :: PM_PLL_ALIVE_SEL :: PLL_SYS0 [01:01] */
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_SYS0_MASK                 0x00000002
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_SYS0_SHIFT                1
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_SYS0_DEFAULT              0x00000000

/* CLKGEN :: PM_PLL_ALIVE_SEL :: PLL_CPU [00:00] */
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_CPU_MASK                  0x00000001
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_CPU_SHIFT                 0
#define BCHP_CLKGEN_PM_PLL_ALIVE_SEL_PLL_CPU_DEFAULT               0x00000000

/***************************************************************************
 *PM_PLL_LDO_POWERUP - Power management LDO PLL
 ***************************************************************************/
/* CLKGEN :: PM_PLL_LDO_POWERUP :: reserved0 [31:10] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_reserved0_MASK              0xfffffc00
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_reserved0_SHIFT             10

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_VCXO1 [09:09] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_VCXO1_MASK    0x00000200
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_VCXO1_SHIFT   9
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_VCXO1_DEFAULT 0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_VCXO0 [08:08] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_VCXO0_MASK    0x00000100
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_VCXO0_SHIFT   8
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_VCXO0_DEFAULT 0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_SC1 [07:07] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_SC1_MASK      0x00000080
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_SC1_SHIFT     7
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_SC1_DEFAULT   0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_SC0 [06:06] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_SC0_MASK      0x00000040
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_SC0_SHIFT     6
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_SC0_DEFAULT   0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_RAAGA [05:05] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_RAAGA_MASK    0x00000020
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_RAAGA_SHIFT   5
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_RAAGA_DEFAULT 0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_NETWORK [04:04] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_NETWORK_MASK  0x00000010
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_NETWORK_SHIFT 4
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_NETWORK_DEFAULT 0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_MOCA [03:03] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_MOCA_MASK     0x00000008
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_MOCA_SHIFT    3
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_MOCA_DEFAULT  0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_CPU [02:02] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_CPU_MASK      0x00000004
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_CPU_SHIFT     2
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_CPU_DEFAULT   0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_DTT [01:01] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_DTT_MASK      0x00000002
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_DTT_SHIFT     1
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_DTT_DEFAULT   0x00000000

/* CLKGEN :: PM_PLL_LDO_POWERUP :: ISO_CLOCK_PLL_AVX [00:00] */
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_AVX_MASK      0x00000001
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_AVX_SHIFT     0
#define BCHP_CLKGEN_PM_PLL_LDO_POWERUP_ISO_CLOCK_PLL_AVX_DEFAULT   0x00000000

/***************************************************************************
 *SMARTCARD_MUX_SELECT - Mux selects for Smartcard clocks
 ***************************************************************************/
/* CLKGEN :: SMARTCARD_MUX_SELECT :: reserved0 [31:02] */
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_reserved0_MASK            0xfffffffc
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_reserved0_SHIFT           2

/* CLKGEN :: SMARTCARD_MUX_SELECT :: SC1_CLOCK [01:01] */
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_SC1_CLOCK_MASK            0x00000002
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_SC1_CLOCK_SHIFT           1
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_SC1_CLOCK_DEFAULT         0x00000000

/* CLKGEN :: SMARTCARD_MUX_SELECT :: SC0_CLOCK [00:00] */
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_SC0_CLOCK_MASK            0x00000001
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_SC0_CLOCK_SHIFT           0
#define BCHP_CLKGEN_SMARTCARD_MUX_SELECT_SC0_CLOCK_DEFAULT         0x00000000

/***************************************************************************
 *SPARE - Spares
 ***************************************************************************/
/* CLKGEN :: SPARE :: SPARE_RESET_LOW [31:12] */
#define BCHP_CLKGEN_SPARE_SPARE_RESET_LOW_MASK                     0xfffff000
#define BCHP_CLKGEN_SPARE_SPARE_RESET_LOW_SHIFT                    12
#define BCHP_CLKGEN_SPARE_SPARE_RESET_LOW_DEFAULT                  0x00000000

/* CLKGEN :: SPARE :: SPARE_RESET_HIGH [11:00] */
#define BCHP_CLKGEN_SPARE_SPARE_RESET_HIGH_MASK                    0x00000fff
#define BCHP_CLKGEN_SPARE_SPARE_RESET_HIGH_SHIFT                   0
#define BCHP_CLKGEN_SPARE_SPARE_RESET_HIGH_DEFAULT                 0x00000000

/***************************************************************************
 *TESTPORT - Special Testport Controls
 ***************************************************************************/
/* CLKGEN :: TESTPORT :: reserved0 [31:04] */
#define BCHP_CLKGEN_TESTPORT_reserved0_MASK                        0xfffffff0
#define BCHP_CLKGEN_TESTPORT_reserved0_SHIFT                       4

/* CLKGEN :: TESTPORT :: PLL_TEST_STATUS_SELECT [03:00] */
#define BCHP_CLKGEN_TESTPORT_PLL_TEST_STATUS_SELECT_MASK           0x0000000f
#define BCHP_CLKGEN_TESTPORT_PLL_TEST_STATUS_SELECT_SHIFT          0
#define BCHP_CLKGEN_TESTPORT_PLL_TEST_STATUS_SELECT_DEFAULT        0x00000000

#endif /* #ifndef BCHP_CLKGEN_H__ */

/* End of File */
