/********************************************************************************
 * Marvell GPL License Option
 *
 * If you received this File from Marvell, you may opt to use, redistribute and/or
 * modify this File in accordance with the terms and conditions of the General
 * Public License Version 2, June 1991 (the "GPL License"), a copy of which is
 * available along with the File in the license.txt file or by writing to the Free
 * Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or
 * on the worldwide web at http://www.gnu.org/licenses/gpl.txt.
 *
 * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED
 * WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY
 * DISCLAIMED.  The GPL License provides additional details about this warranty
 * disclaimer.
 ******************************************************************************/

//////
/// don't edit! auto-generated by docc: SysMgr.h
////////////////////////////////////////////////////////////
#ifndef SysMgr_h
#define SysMgr_h (){}


#include "ctypes.h"

#pragma pack(1)
#ifdef __cplusplus
  extern "C" {
#endif

#ifndef _DOCC_H_BITOPS_
#define _DOCC_H_BITOPS_ (){}

    #define _bSETMASK_(b)                                      ((b)<32 ? (1<<((b)&31)) : 0)
    #define _NSETMASK_(msb,lsb)                                (_bSETMASK_((msb)+1)-_bSETMASK_(lsb))
    #define _bCLRMASK_(b)                                      (~_bSETMASK_(b))
    #define _NCLRMASK_(msb,lsb)                                (~_NSETMASK_(msb,lsb))
    #define _BFGET_(r,msb,lsb)                                 (_NSETMASK_((msb)-(lsb),0)&((r)>>(lsb)))
    #define _BFSET_(r,msb,lsb,v)                               do{ (r)&=_NCLRMASK_(msb,lsb); (r)|=_NSETMASK_(msb,lsb)&((v)<<(lsb)); }while(0)

#endif



//////
/// 
/// $INTERFACE smSysCtl                biu              (4,4)
///     # # ----------------------------------------------------------
///     @ 0x00000 SM_ID                (R-)
///               ###
///               * SM ID information
///               ###
///               %unsigned 4  REV_ID                    0xA
///                                    ###
///                                    * SM revision ID
///                                    ###
///               %unsigned 16 PART_ID                   0x7788
///                                    ###
///                                    * SM part number ID
///                                    ###
///               %unsigned 12 MFC_ID                    0x8D
///                                    ###
///                                    * SM manufacture
///                                    ###
///     @ 0x00004 SM_CPU_CTRL          (RW)
///               ###
///               * SM CPU control
///               ###
///               %unsigned 1  CPU_RST_GO                0x0
///                                    ###
///                                    * SM CPU reset control
///                                    * 0: assert CPU reset
///                                    * 1: de-assert CPU reset
///                                    ###
///               %unsigned 1  CPU_VINITHI               0x0
///                                    ###
///                                    * High exception vector address select
///                                    * 0: starts from 0x0000_0000
///                                    * 1: starts from 0xFFFF_0000
///                                    ###
///               %unsigned 1  CPU_INITRAM               0x1
///                                    ###
///                                    * TCM enable at reset
///                                    * 0: TCM disable at reet
///                                    * 1: TCM is enabled at reset
///                                    ###
///               %unsigned 1  CPU_BIGEND                0x0
///                                    ###
///                                    * SM CPU endian status
///                                    * 0: little endian
///                                    * 1: big endian
///                                    ###
///               %%        28         # Stuffing bits...
///     @ 0x00008 SM_RST_CTRL          (RW)
///               ###
///               * SM reset control
///               ###
///               %unsigned 1  SOC_RST_GO                0x1
///                                    ###
///                                    * Berlin SoC reset control
///                                    * 0: assert Berlin SoC reset
///                                    * 1: de-assert Berlin SoC reset
///                                    ###
///               %unsigned 1  APB_RST_GO                0x1
///                                    ###
///                                    * SM APB component reset control, write 1 to assert APB reset. This reset automatically de-assert after 3 SM system clocks
///                                    * 0: assert APB reset, de-assert automatically
///                                    * 1: no effect
///                                    ###
///               %unsigned 1  SXBAR_RST_GO              0x1
///                                    ###
///                                    * SM crossbar reset control, write 1 to assert SXBAR reset. This reset automatically de-assert after 3 SM system clocks
///                                    * 0: assert SXBAR reset, de-assert automatically.
///                                    * 1: no effect
///                                    ###
///               %unsigned 1  WOL_RST_GO                0x1
///                                    ###
///                                    * WOL reset control.
///                                    * 0: assert WOL reset.
///                                    * 1: de-assert WOL reset.
///                                    ###
///               %unsigned 1  FEPHY_RST_GO              0x1
///                                    ###
///                                    * FEPHY reset control.
///                                    * 0: assert FEPHY reset.
///                                    * 1: de-assert FEPHY reset.
///                                    ###
///               %%        27         # Stuffing bits...
///     @ 0x0000C SM_RST_STATUS        (RW)
///               ###
///               * SM reset status control
///               ###
///               %unsigned 1  RST_WD_0                  0x0
///                                    ###
///                                    * Watch dog 0 status
///                                    * 0: no watch dog 0 event happen
///                                    * 1: watch dog 0 event happen
///                                    ###
///               %unsigned 1  RST_WD_1                  0x0
///                                    ###
///                                    * Watch dog 1 status
///                                    * 0: no watch dog 1 event happen
///                                    * 1: watch dog 1 event happen
///                                    ###
///               %unsigned 1  RST_WD_2                  0x0
///                                    ###
///                                    * Watch dog 2 status
///                                    * 0: no watch dog 2 event happen
///                                    * 1: watch dog 2 event happen
///                                    ###
///               %%        29         # Stuffing bits...
///     @ 0x00010 SM_STRP_STATUS       (RW)
///               ###
///               * SM power strapping status control
///               ###
///               %unsigned 2  BOOT_MODE                 0x0
///                                    ###
///                                    * SM boot up mode[1:0]
///                                    * 00: Boot typical way 0
///                                    * 01: Boot typical way 1 (with power stable in)
///                                    * 10: Bo0t new way
///                                    * 11: Disable SM
///                                    ###
///               %unsigned 1  STRP_2                    0x0
///                                    ###
///                                    * Reserved
///                                    ###
///               %unsigned 1  STRP_3                    0x0
///                                    ###
///                                    * Reserved
///                                    ###
///               %%        28         # Stuffing bits...
///     @ 0x00014 SM_CTRL              (RW)
///               ###
///               * SM misc control
///               ###
///               %unsigned 1  ISO_EN                    0x0
///                                    ###
///                                    * Isolation cell enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  SM2SOC_SW_INTR            0x0
///                                    ###
///                                    * SM to SOC software interrupt
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  SOC2SM_SW_INTR            0x1
///                                    ###
///                                    * SOC to SM software interrupt, connects to IRQ13, active low
///                                    * 0: enable
///                                    * 1: disable
///                                    ###
///               %unsigned 2  REV_0                     0x0
///                                    ###
///                                    * Reserved
///                                    ###
///               %unsigned 4  ADC_SEL                   0x7
///                                    ###
///                                    * ADC input selection
///                                    * 4'h0: ADC_IN[0]
///                                    * 4'h1: ADC_IN[1]
///                                    * 4'h2: ADC_IN[2]
///                                    * 4'h3: ADC_IN[3]
///                                    * 4'h4: ADC_IN[4]
///                                    * 4'h5: ADC_IN[5]
///                                    * 4'h6: ADC_IN[6]
///                                    * 4'h7: ADC_IN[7]
///                                    * 4'h8: ADC_IN[8]
///                                    * 4'h9: ADC_IN[9]
///                                    * 4'hA: ADC_IN[10]
///                                    * 4'hB: ADC_IN[11]
///                                    * 4'hC: ADC_IN[12]
///                                    * 4'hD: ADC_IN[13]
///                                    * 4'hE: ADC_IN[14]
///                                    * 4'hF: ADC_IN[15]
///                                    ###
///               %unsigned 1  ADC_PU                    0x0
///                                    ###
///                                    * SM ADC power control
///                                    * 0: power-down
///                                    * 1: power-up
///                                    ###
///               %unsigned 2  ADC_CKSEL                 0x3
///                                    ###
///                                    * ADC internal clock divider selection
///                                    * 2'h0: ck / 2
///                                    * 2'h1: ck / 3
///                                    * 2'h2: ck / 4
///                                    * 2'h3: ck / 8
///                                    ###
///               %unsigned 1  ADC_START                 0x0
///                                    ###
///                                    * Start ADC digitalization process, write 1 to start ADC digitalization. This bit automatically clear after receiving ADC done signal
///                                    * 0: no effect
///                                    * 1: Start ADC digitalization, clear automatically.
///                                    ###
///               %unsigned 1  ADC_RESET                 0x1
///                                    ###
///                                    * ADC reset control input, active high.
///                                    * 1: the digital circuitry is held in reset .
///                                    * 0: the digital circuitry is enabled and the analog circuitry will be powered up if ADC_PU_SAR11=1, BG_RDY11=1, and VAA is present.
///                                    ###
///               %unsigned 1  ADC_BG_RDY                0x0
///                                    ###
///                                    * bandgap reference block is powered up and ready
///                                    ###
///               %unsigned 1  ADC_CONT                  0x0
///                                    ###
///                                    * continuous mode vs. single-shot mode
///                                    * 0: ADC is in single-shot conversion operating mode.
///                                    * 1: ADC is in continuous conversion operating mode.
///                                    ###
///               %unsigned 1  ADC_BUF_EN                0x0
///                                    ###
///                                    * enables analog ADC input buffer
///                                    ###
///               %unsigned 1  ADC_VREF_SEL              0x0
///                                    ###
///                                    * selects ext. reference vs. int. ref.
///                                    ###
///               %unsigned 1  ADC_ROTATE_SEL            0x0
///                                    ###
///                                    * Orientation bit
///                                    ###
///               %unsigned 1  TSEN_EN                   0x0
///                                    ###
///                                    * Temperature sensor measurement enable signal. It should last for complete TS measurement cycles and will be deserted by DATA_RDY. When asserted, measurement gets started. uC should wait till DATA_RDY= 1 to desert TS_EN.
///                                    ###
///               %unsigned 1  TSEN_CLK_SEL              0x0
///                                    ###
///                                    * CLK_SEL= 1 will choose 2.5MHz clock, otherwise 1.25MHz will be chosen.
///                                    ###
///               %unsigned 1  TSEN_MODE_SEL             0x0
///                                    ###
///                                    * MODE_SEL= 1 will choose 10 ~ 50 degree Centigrade temperature testing range, otherwise 0 ~ 125 degree Centigrade temperature testing range will be chosen.
///                                    ###
///               %unsigned 2  TSEN_ADC_CAL              0x0
///                                    ###
///                                    * ADC calibration mode select bits from uC. 00 = normal function 10 = gain calibration function 01 = offset calibration (0.6V) 11 = Not used
///                                    ###
///               %unsigned 5  TSEN_ADC_TST_SEL          0x0
///                                    ###
///                                    * DC test point select signal
///                                    ###
///               %unsigned 1  TSEN_RESET                0x1
///                                    ###
///                                    * 1'b1 to reset TSEN after power up
///                                    ###
///               %unsigned 1  TSEN_ADC_ISO_EN           0x0
///                                    ###
///                                    * It's used as digital power availability indicator for digital 1.1V power domain and analog 1.8V power domain isolation purpose.
///                                    ###
///               %%        1          # Stuffing bits...
///     @ 0x00018 SM_ADC_CTRL          (RW)
///               ###
///               * SM ADCs Control
///               ###
///               %unsigned 5  TSEN_DAT_LT               0x0
///                                    ###
///                                    * Delay interms of pclk after data ready at which the data is to be latched
///                                    ###
///               %unsigned 5  ADC_DAT_LT                0x0
///                                    ###
///                                    * Delay interms of pclk after data ready at which the data is to be latched
///                                    ###
///               %%        22         # Stuffing bits...
///     @ 0x0001C SM_ADC_STATUS        (RW)
///               ###
///               * SM ADC status and interrupt enable
///               ###
///               %unsigned 1  CH0_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 0 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH1_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 1 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH2_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 2 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH3_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 3 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH4_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 4 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH5_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 5 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH6_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 6 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH7_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 7 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH8_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 8 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH9_DATA_RDY              0x0
///                                    ###
///                                    * ADC channel 9 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH10_DATA_RDY             0x0
///                                    ###
///                                    * ADC channel 10 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH11_DATA_RDY             0x0
///                                    ###
///                                    * ADC channel 11 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH12_DATA_RDY             0x0
///                                    ###
///                                    * ADC channel 12 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH13_DATA_RDY             0x0
///                                    ###
///                                    * ADC channel 13 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH14_DATA_RDY             0x0
///                                    ###
///                                    * ADC channel 14 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH15_DATA_RDY             0x0
///                                    ###
///                                    * ADC channel 15 data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  CH0_INT_EN                0x0
///                                    ###
///                                    * ADC channel 0 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH1_INT_EN                0x0
///                                    ###
///                                    * ADC channel 1 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH2_INT_EN                0x0
///                                    ###
///                                    * ADC channel 2 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH3_INT_EN                0x0
///                                    ###
///                                    * ADC channel 3 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH4_INT_EN                0x0
///                                    ###
///                                    * ADC channel 4 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH5_INT_EN                0x0
///                                    ###
///                                    * ADC channel 5 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH6_INT_EN                0x0
///                                    ###
///                                    * ADC channel 6 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH7_INT_EN                0x0
///                                    ###
///                                    * ADC channel 7 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH8_INT_EN                0x0
///                                    ###
///                                    * ADC channel 8 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH9_INT_EN                0x0
///                                    ###
///                                    * ADC channel 9 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH10_INT_EN               0x0
///                                    ###
///                                    * ADC channel 10 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH11_INT_EN               0x0
///                                    ###
///                                    * ADC channel 11 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH12_INT_EN               0x0
///                                    ###
///                                    * ADC channel 12 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH13_INT_EN               0x0
///                                    ###
///                                    * ADC channel 13 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH14_INT_EN               0x0
///                                    ###
///                                    * ADC channel 14 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %unsigned 1  CH15_INT_EN               0x0
///                                    ###
///                                    * ADC channel 15 interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///     @ 0x00020 SM_ADC_DATA          (R-)
///               ###
///               * SM ADC digitalized data
///               ###
///               %unsigned 10 ADC_DATA                  0x0
///                                    ###
///                                    * ADC data
///                                    ###
///               %%        22         # Stuffing bits...
///     @ 0x00024 TSEN_ADC_STATUS      (RW)
///               ###
///               * SM TSEN ADC status and interrupt enable
///               ###
///               %unsigned 1  DATA_RDY                  0x0
///                                    ###
///                                    * ADC data ready, write 0 to clear interrupt, write 1 won't effect anything
///                                    * 0: no valid data
///                                    * 1: data ready to read
///                                    ###
///               %unsigned 1  INT_EN                    0x0
///                                    ###
///                                    * ADC interrupt enable
///                                    * 0: disable
///                                    * 1: enable
///                                    ###
///               %%        30         # Stuffing bits...
///     @ 0x00028 TSEN_ADC_DATA        (R-)
///               ###
///               * SM TSEN ADC digitalized data
///               ###
///               %unsigned 12 ADC_DATA                  0x0
///                                    ###
///                                    * 12-bit post-average and calibration TSEN result.
///                                    * Data format is signed 12-bit with sign bit on the 1st MSB.
///                                    ###
///               %%        20         # Stuffing bits...
///     @ 0x0002C TSEN_CHK_CTRL        (RW)
///               ###
///               * SM TSEN Data Thresholds
///               ###
///               %unsigned 12 TSEN_DATA_MAX             0xFFF
///                                    ###
///                                    * Maximum value used to check against TSEN_DATA
///                                    ###
///               %unsigned 12 TSEN_DATA_MIN             0x0
///                                    ###
///                                    * Minimum value used to check against TSEN_DATA
///                                    ###
///               %unsigned 1  TSEN_OVERHEAT_SEL         0x0
///                                    ###
///                                    * 0: Overheat flag uses TSEN_MAX_FAIL
///                                    * 1: Overheat flag uses TSEN_MIN_FAIL
///                                    ###
///               %%        7          # Stuffing bits...
///     @ 0x00030 TSEN_DATA_STATUS     (R-)
///               ###
///               * SM TSEN Data Threshold Check Status
///               ###
///               %unsigned 1  TSEN_MAX_FAIL             0x0
///                                    ###
///                                    * 0: TSEN_DATA <= TSEN_DATA_MAX
///                                    * 1: TSEN_DATA > TSEN_DATA_MAX
///                                    ###
///               %unsigned 1  TSEN_MIN_FAIL             0x0
///                                    ###
///                                    * 0: TSEN_DATA >= TSEN_DATA_MIN
///                                    * 1: TSEN_DATA < TSEN_DATA_MIN
///                                    ###
///               %%        30         # Stuffing bits...
///     @ 0x00034 SM_BOOT_STATUS       (RW)
///               ###
///               * SM Software Boot status
///               ###
///               %unsigned 32 MODE                      0x0
///                                    ###
///                                    * Used by software only to store boot up status. HW can only clean to 0 with POR
///                                    ###
///     @ 0x00038 SM_LDO_CTRL          (RW)
///               ###
///               * SM LDO control & status register
///               ###
///               %unsigned 3  TEST_SEL                  0x0
///                                    ###
///                                    * Select output of test mux (VDD domain)
///                                    ###
///               %unsigned 3  VOUT_SEL                  0x0
///                                    ###
///                                    * Select LDO output voltage (VDD domain)
///                                    * 000   :	0.9V
///                                    * 001   :	0.789V
///                                    * 010   :	0.826V
///                                    * 011   :	0.863V
///                                    * 100   :	0.937V
///                                    * 101   :	0.974V
///                                    * 110   :	1.011V
///                                    * 111   :	1.048V
///                                    ###
///               %unsigned 1  TEST_EN                   0x0
///                                    ###
///                                    * Enable test mux (VDD domain )
///                                    ###
///               %unsigned 1  LDO_RDY                   0x0
///                                    ###
///                                    * Assert the LDO ready
///                                    ###
///               %unsigned 1  CHP_EN_1P1                0x0
///               %unsigned 1  ICLAMP_EN_1P1             0x0
///               %%        22         # Stuffing bits...
///     @ 0x0003C SM_WDT_MASK          (RW)
///               ###
///               * SM WDT Mask
///               ###
///               %unsigned 3  SM_RST                    0x7
///                                    ###
///                                    * WDT reset mask bit for SM reset signal.
///                                    * 1 : disable WDT (0,1,2) timeout to reset SM for each WDT
///                                    ###
///               %unsigned 3  SOC_RST                   0x7
///                                    ###
///                                    * WDT reset mask bit for SOC reset signal.
///                                    * 1 : disable WDT (0,1,2) timeout to reset SOC for each WDT
///                                    ###
///               %%        26         # Stuffing bits...
///     @ 0x00040 SM_CLK_CTRL          (RW)
///               ###
///               * SM Clock control register
///               ###
///               %unsigned 1  tsenClkSel                0x0
///                                    ###
///                                    * Tsen clock select
///                                    * 0 : 2.5MHz
///                                    * 1 : 1.25MHz
///                                    ###
///               %unsigned 1  tsenClkEn                 0x1
///                                    ###
///                                    * Tsen Clock Enable
///                                    * 0 : disabled
///                                    * 1 : enabled
///                                    ###
///               %unsigned 1  ssmiiTxClkSel             0x0
///                                    ###
///                                    * SSMI Interface transmit clock select
///                                    * 0 : 2.5MHz
///                                    * 1 : 25MHz
///                                    ###
///               %unsigned 1  ssmiiTxClkEn              0x1
///                                    ###
///                                    * SSMI Interface transmit clock enable
///                                    * 0 : disabled
///                                    * 1 : enabled
///                                    ###
///               %%        28         # Stuffing bits...
///     @ 0x00044 smAnaGrpCtl          (P-)
///               ###
///               * SM Analog group registers
///               ###
///               %unsigned 1  pu                        0x1
///                                    ###
///                                    * Power-up signal for the whole block
///                                    * 1: power-up
///                                    * 0: power-down
///                                    ###
///               %unsigned 2  bgSel                     0x1
///                                    ###
///                                    * Selects the reference Voltage
///                                    * 00:0.575V
///                                    * 01:0.6V
///                                    * 10:0.625V
///                                    * 11:0.65V
///                                    ###
///               %unsigned 1  puXtl                     0x1
///                                    ###
///                                    * Power-up signal for the XTL OSC circuit.
///                                    * 1: Power-up XTAL
///                                    * 0: power-down XTAL
///                                    ###
///               %unsigned 1  bypass                    0x0
///                                    ###
///                                    * OSC bypass control
///                                    * 1: in bypass mode
///                                    * 0: in osc mode
///                                    * **INTERNAL_ONLY***
///                                    ###
///               %unsigned 1  gainX2                    0x0
///                                    ###
///                                    * Gain control
///                                    * 1: 2x buffer size 30M-50MHz
///                                    * 0: 1x buffer size 10-30MHz
///                                    ###
///               %unsigned 2  selClkDigDiv1             0x0
///                                    ###
///                                    * Selection of clock division ratio for CLKOUT_DIG[0]
///                                    * 00: divided by 1
///                                    * 01: divided by 2
///                                    * 10: divided by 4
///                                    * 11: divided by 8
///                                    ###
///               %unsigned 2  selClkDigDiv2             0x0
///                                    ###
///                                    * Selection of clock division ratio for CLKOUT_DIG[1]
///                                    * 00: divided by 1
///                                    * 01: divided by 2
///                                    * 10: divided by 4
///                                    * 11: divided by 8
///                                    ###
///               %unsigned 2  selClkDigDiv3             0x0
///                                    ###
///                                    * Selection of clock division ratio for CLKOUT_DIG[2]
///                                    * 00: divided by 1
///                                    * 01: divided by 2
///                                    * 10: divided by 4
///                                    * 11: divided by 8
///                                    ###
///               %unsigned 2  selClkDigDiv4             0x0
///                                    ###
///                                    * Selection of clock division ratio for CLKOUT_DIG[3]
///                                    * 00: divided by 1
///                                    * 01: divided by 2
///                                    * 10: divided by 4
///                                    * 11: divided by 8
///                                    ###
///               %unsigned 1  puOsc                     0x0
///                                    ###
///                                    * Power-up control for the free-running ring oscillator
///                                    ###
///               %unsigned 2  speedOsc                  0x2
///                                    ###
///                                    * Speed selection for the frequency of CLKOUT_OSC
///                                    * 00: 9 MHz +/-20%
///                                    * 01: 12MHz +/-20%
///                                    * 10: 16 MHz +/-20%
///                                    * 11: 20 MHz +/-20%
///                                    ###
///               %unsigned 4  testAna                   0x0
///                                    ###
///                                    * Analog test control bits.
///                                    ###
///               %unsigned 1  bgRdy                     0x0
///                                    ###
///                                    * BG Ready status bit.
///                                    ###
///               %unsigned 10 reserve_in                0x1AF
///                                    ###
///                                    * Reserved Input Register Pins
///                                    ###
///     # 0x00048 smAnaGrpCtl1         
///               %unsigned 1  xtl_pecl_sel              0x1
///                                    ###
///                                    * Choose Regulator Supply “ON”
///                                    * For XTAL Or PECL “On”
///                                    * When XTL_PECL_SEL = 1, PU_XTL = 1, regulator supply for XTAL ON, regulator supply for PECL OFF then choose XTAL output clock for final clock CLKOUT_ANA[3:0], CLKOUT_DIG[3:0] and REFCLKC1, REFCLKC2.
///                                    * When XTL_PECL_SEL= 0, PU_PECL= 1 then choose output clock CLKOUT_ANA[3:0], CLKOUT_DIG[3:0] , REFCLKC1 and REFCLKC2 from PECL output.
///                                    ###
///               %unsigned 2  vreg_1p2v_sel             0x1
///                                    ###
///                                    * XTAL 1.2V Select. Selects 1.2V voltage for the crystal. (XTAL_VDDR1P2V)
///                                    * 00: 1.116V
///                                    * 01: 1.2V
///                                    * 10: 1.24V
///                                    * 11: 1.28V.
///                                    ###
///               %unsigned 3  vreg_1p05v_sel_xtl        0x3
///                                    ###
///                                    * Regulator1.05V Select. Voltage(XTAL_VDDR1P05V)
///                                    * 000: XTAL_VDDR1P2-10mV*21
///                                    * 001: XTAL_VDDR1P2-10mV*19
///                                    * 010: XTAL_VDDR1P2-10mV*17
///                                    * 011: XTAL_VDDR1P2-10mV*15
///                                    * 100: XTAL_VDDR1P2-10mV*13
///                                    * 101: XTAL_VDDR1P2-10mV*11
///                                    * 110: XTAL_VDDR1P2-10mV*9
///                                    * 111: XTAL_VDDR1P2-10mV*7
///                                    ###
///               %unsigned 3  vreg_1p05v_sel_pecl       0x3
///                                    ###
///                                    * Regulator1.05V Select. Voltage(PECL_VDDR1P05V)
///                                    * 000: XTAL_VDDR1P2-10 mV*21
///                                    * 001: XTAL_VDDR1P2-10 mV*19
///                                    * 010: XTAL_VDDR1P2-10 mV*17
///                                    * 011: XTAL_VDDR1P2-10 mV*15
///                                    * 100: XTAL_VDDR1P2-10 mV*13
///                                    * 101: XTAL_VDDR1P2-10 mV*11
///                                    * 110: XTAL_VDDR1P2-10 mV*9
///                                    * 111: XTAL_VDDR1P2-10 mV*7
///                                    ###
///               %unsigned 1  term                      0x1
///                                    ###
///                                    * PECL Internal Block Common Mode Voltage Control. When PECL_EN = 1,
///                                    * 1. DC coupling:
///                                    * common mode 1.0V ~1.2V TERM = 0
///                                    * common mode1.2V~1.4V TERM = 1
///                                    * 2. Input clock AC coupling, TERM must be set to 0.
///                                    * When PECL_EN = 0, set TERM = 1.
///                                    ###
///               %unsigned 1  pu_pecl                   0x0
///                                    ###
///                                    * Power-Up Signal For PECL Circuit Select.
///                                    * 1: Power-up PECL
///                                    * 0: Power-down PECL
///                                    ###
///               %unsigned 1  pecl_en                   0x0
///                                    ###
///                                    * PECL Level or CMOS Level Input Port Select.
///                                    * 1: REFCLKP and REFCLKN are PECL level differential input.
///                                    * 0: REFCLKP and REFCLKN are CMOS level input from the REFCLKP port.
///                                    ###
///               %unsigned 1  pu_limiter                0x0
///                                    ###
///                                    * Power-Up Signal For Limiter Circuit Select.
///                                    * 1: Power-up limiter
///                                    * 0: power-down limiter
///                                    ###
///               %unsigned 1  limiter_dc_clk_en         0x0
///                                    ###
///                                    * When = 0, LIMITER_DC_CLK has no clock output
///                                    * When = 1, LIMITER_DC_CLK has clock output.
///                                    ###
///               %unsigned 2  ipp_adj                   0x1
///                                    ###
///                                    * IPP_ADJ Current Select.
///                                    * IPP_ADJ[1:0] IPP Current
///                                    * 00 .........................197%
///                                    * 01 .........................100%
///                                    * 10..........................103%
///                                    * 111........................ 107%
///                                    ###
///               %unsigned 2  icc_adj                   0x1
///                                    ###
///                                    * ICC_ADJ Current Select.
///                                    * ICC_ADJ[1:0] ICC Current
///                                    * 00 .........................197%
///                                    * 01 .........................100%
///                                    * 10..........................103%
///                                    * 111........................ 107%
///                                    ###
///               %unsigned 2  ixtal                     0x1
///                                    ###
///                                    * XTAL Block Current Change.
///                                    * 00: 100 uA
///                                    * 01: 150 uA
///                                    * 10: 200 uA
///                                    * 11: 250 uA.
///                                    ###
///               %unsigned 1  icc10u_in_sel             0x0
///                                    ###
///                                    * CLKOUT_OSC ICC Current Select
///                                    * 1: Use external ICC current for CLKOUT_OSC. Feed external constant 10 uA current to ICC10U_IN.
///                                    * 0: Use internal ICC current for CLKOUT_OSC. ICC10U_IN can be tied low.
///                                    ###
///               %unsigned 6  reserve_out               0x3F
///                                    ###
///                                    * Reserve Out
///                                    ###
///               %%        5          # Stuffing bits...
///     @ 0x0004C SM_CORE_CTRL         (RW)
///               ###
///               * SM core control for pad(padring 1)
///               ###
///               %unsigned 1  PAD_REG_PDB_CORE          0x1
///               %unsigned 1  PAD_V18EN_CORE            0x0
///               %unsigned 1  PAD_V25EN_CORE            0x0
///               %unsigned 4  PAD_ZP                    0x0
///               %unsigned 4  PAD_ZN                    0x0
///               %%        21         # Stuffing bits...
///     @ 0x00050 SM_TEST              (R-)
///               ###
///               * SM ADC Test Results
///               ###
///               %unsigned 1  ADC_TEST_FAIL             0x0
///                                    ###
///                                    * ADC Test result bit
///                                    * 1: ADC data is not in the valid window
///                                    ###
///               %%        31         # Stuffing bits...
///     @ 0x00054 SM_TEST_DATA0        (RW)
///               ###
///               * SM ADC Test Registers High
///               ###
///               %unsigned 10 ADC_DATA_HIGH             0x0
///                                    ###
///                                    * ADC test data upper boundary
///                                    ###
///               %%        22         # Stuffing bits...
///     @ 0x00058 SM_TEST_DATA1        (RW)
///               ###
///               * SM ADC Test Registers Low
///               ###
///               %unsigned 10 ADC_DATA_LOW              0x0
///                                    ###
///                                    * ADC test data Lower boundary
///                                    ###
///               %%        22         # Stuffing bits...
///     @ 0x0005C SM_RWTC_CTRL_0       (RW)
///               ###
///               * SM memory strength control register 0
///               ###
///               %unsigned 4  RF1P_LOW                  0xA
///                                    ###
///                                    * RF1P memory RWTC control for LOW SPEED
///                                    ###
///               %unsigned 4  RF1P_HIGH                 0xA
///                                    ###
///                                    * RF1P memory RWTC control for HIGH SPEED
///                                    ###
///               %unsigned 4  RF2P_LOW                  0x9
///                                    ###
///                                    * RF2P memory RWTC control for LOW SPEED
///                                    ###
///               %unsigned 4  RF2P_HIGH                 0x9
///                                    ###
///                                    * RF2P memory RWTC control for HIGH SPEED
///                                    ###
///               %unsigned 4  SR1P_LOW                  0xA
///                                    ###
///                                    * SR1P memory RWTC control for LOW SPEED
///                                    ###
///               %unsigned 4  SR1P_HIGH                 0xA
///                                    ###
///                                    * SR1P memory RWTC control for HIGH SPEED
///                                    ###
///               %unsigned 4  SR2P_LOW                  0xA
///                                    ###
///                                    * SR2P memory RWTC control for LOW SPEED
///                                    ###
///               %unsigned 4  SR2P_HIGH                 0xA
///                                    ###
///                                    * SR2P memory RWTC control for HIGH SPEED
///                                    ###
///     @ 0x00060 SM_RWTC_CTRL_1       (RW)
///               ###
///               * SM memory strength control register 1
///               ###
///               %unsigned 5  ROM_LOW                   0x1A
///                                    ###
///                                    * ROM memory RWTC control for LOW SPEED
///                                    ###
///               %unsigned 5  ROM_HIGH                  0x1A
///                                    ###
///                                    * ROM memory RWTC control for HIGH SPEED
///                                    ###
///               %unsigned 4  ACMEM                     0x5
///                                    ###
///                                    * AC memory RTC control for HIGH SPEED
///                                    ###
///               %%        18         # Stuffing bits...
///     @ 0x00064 SM_PORT_SEL_CTRL     (RW)
///               %unsigned 1  TW2                       0x0
///                                    ###
///                                    * 0: use SM_SPI2_SS2n and SM_SPI2_SS2n
///                                    * 1: use SM_URT0_CTSn and SM_URT0_RTSn
///                                    ###
///               %unsigned 1  URT1                      0x0
///                                    ###
///                                    * 0: use SM_URT1_RXD and SM_URT1_TXD
///                                    * 1: use SM_URT0_CTSn and SM_URT0_RTSn
///                                    ###
///               %%        30         # Stuffing bits...
///     @ 0x00068 TSEN_ADC_RAW_DATA    (R-)
///               ###
///               * SM TSEN ADC RAW DATA for debug purpose
///               ###
///               %unsigned 12 TSEN_DATA_RAW             0x0
///                                    ###
///                                    * ADC 12-bit raw data for debug purpose
///                                    ###
///               %%        20         # Stuffing bits...
///     @ 0x0006C TSEN_ADC_CLK_DIV     (RW)
///               ###
///               * TSEN ADC_clock dividers
///               ###
///               %unsigned 3  ADC_DIV                   0x0
///               %unsigned 4  TSEN_DIV                  0x1
///                                    ###
///                                    * Clock divider set. Select TSEN internal operating frequency.
///                                    * 0000: divide-by-32.(500KHz if main clock is 16MHz).
///                                    * 0001: divide-by-48. (500KHz~521KHz if main clock is 24MHz~25MHz).
///                                    * 0010: divide-by-64. (500KHz if main clock is 32MHz).
///                                    * 0011: divide-by-80. (450KHz~550KHz if main clock is 36MHz~44MHz).
///                                    * 0100: divide-by-94. (468KHz~532KHz if main clock is 44MHz~50MHz).
///                                    * 0101: divide-by-112. (450KHz~550KHz if main clock is 50.4MHz~61.5MHz).
///                                    * 0110: divide-by-132. (466KHz~532KHz if main clock is 61.5MHz~70.2MHz).
///                                    * 0111: divide-by-150. (468KHz~528KHz if main clock is 70.2MHz~79.2MHz).
///                                    * 1000: divide-by-168. (471KHz~524KHz if main clock is 79.2MHz~88MHz).
///                                    * 1001: divide-by-184. (478KHz~526KHz if main clock is 88MHz~96.8MHz).
///                                    * 1010: divide-by-210. (461KHz~545KHz if main clock is 96.8MHz~114.4MHz).
///                                    * 1011: divide-by-246. - 13 – (465KHz~537KHz if main clock is 114.4MHz~132MHz).
///                                    * 1100: divide-by-282. (468KHz~530KHz if main clock is 132MHz~149.6MHz).
///                                    * 1101: divide-by-326. (459KHz~540KHz if main clock is 149.6MHz~176MHz).
///                                    * 1110: divide-by-376. (468KHz~532KHz if main clock is 176MHz~200MHz).
///                                    * 1111 reserved
///                                    ###
///               %%        25         # Stuffing bits...
///     @ 0x00070 TSEN_ADC_CTRL        (RW)
///               ###
///               * TSEN ADC control registers
///               ###
///               %unsigned 8  ADC_VREF_ADJ              0x34
///                                    ###
///                                    * Used for trimming the reference voltage based on correction factors determined during manufacturing test.
///                                    ###
///               %unsigned 1  TSEN_START                0x0
///               %unsigned 3  TSEN_AVG_NUM              0x3
///                                    ###
///                                    * Temperature measurement result averaging:
///                                    * 000: no average
///                                    * 001: average 2
///                                    * 010: average 4
///                                    * 011: average 8
///                                    * 100: reserved
///                                    * 101: reserved
///                                    * 110: reserved
///                                    * 111: reserved
///                                    ###
///               %unsigned 1  TSEN_EXT_EN               0x0
///               %unsigned 2  TSEN_CHOP_EN              0x3
///                                    ###
///                                    * Chopper enable bits.
///                                    * 00: all choppers are off.
///                                    * 01: TSEN chopper is on, cap swap is off
///                                    * 10: TSEN cap swap is off, cap swap is on
///                                    * 11: all choppers are on
///                                    ###
///               %unsigned 2  TSEN_CAL                  0x2
///                                    ###
///                                    * ADC foreground calibration select
///                                    * 00: automatic self-cal skipped, TSEN in normal mode.
///                                    * 01: automatic self-cal skipped, TSEN in ADC gain cal mode.
///                                    * 10: automatic self-cal enforced, TSEN in normal mode.
///                                    * 11: automatic self-cal enforced, TSEN in ADC gain cal mode.
///                                    ###
///               %unsigned 4  TSEN_RSVD                 0xC
///                                    ###
///                                    * Reserved bits.
///                                    ###
///               %unsigned 1  BG_CHP_SEL                0x0
///                                    ###
///                                    * Chopper enable signal(1.1V):
///                                    * 0 disable, the settling time is 4us,
///                                    * 1 enable, the settling time is 12us0
///                                    ###
///               %unsigned 4  BG_DTRIM                  0x7
///                                    ###
///                                    * Band gap curve trimming control signal(1.1V)
///                                    * 0000:1.219V
///                                    * .
///                                    * 0111:1.232V
///                                    * 1111:1.247V
///                                    ###
///               %%        6          # Stuffing bits...
///     @ 0x00074 TSEN_ADC_DBG         (RW)
///               ###
///               * Tsen ADC debug register.
///               ###
///               %unsigned 2  TSEN_RAW_SEL              0x0
///                                    ###
///                                    * Default 2'b00
///                                    * Digital raw data select bits:
///                                    * '00' =12-b post-avg post_cal tsen measurement data in code (Raw1 reg)
///                                    * '01' =12-b post-avg but pre-cal tsen measurement data in code (Raw2 reg)
///                                    * '10' = 12-b self cal data in code (Raw3 reg)
///                                    * '11' =12-b pre-avg tsen measurement data in code (Raw4 reg)
///                                    ###
///               %%        30         # Stuffing bits...
///     @ 0x00078 SM_DUMMY_REG         (RW)
///               ###
///               * Dummy Register for ECOs and Etc
///               ###
///               %unsigned 32 REG0                      0x0
///                                    ###
///                                    * 32-bit Dummy Spare Register
///                                    ###
///     @ 0x0007C                      (W-)
///     #         # Stuffing bytes...
///               %% 3104
///     @ 0x00200 smPinMuxCntlBus      (P-)
///               %unsigned 3  SM_TMS                    0x0
///                                    ###
///                                    * smPinMuxCntlBus[0*3+2:0*3]	 pinMux Control for SM_TMS
///                                    ###
///                                    : MODE_0                    0x0
///                                    : MODE_1                    0x1
///                                    : MODE_3                    0x3
///                                    : MODE_4                    0x4
///                                    : MODE_5                    0x5
///                                    : MODE_6                    0x6
///               %unsigned 3  SM_TDI                    0x0
///                                    ###
///                                    * smPinMuxCntlBus[1*3+2:1*3]	 pinMux Control for SM_TDI
///                                    ###
///                                    : MODE_0                    0x0
///                                    : MODE_1                    0x1
///                                    : MODE_3                    0x3
///                                    : MODE_4                    0x4
///                                    : MODE_5                    0x5
///                                    : MODE_6                    0x6
///               %unsigned 3  SM_TDO                    0x0
///                                    ###
///                                    * smPinMuxCntlBus[2*3+2:2*3]	 pinMux Control for SM_TDO
///                                    ###
///                                    : MODE_0                    0x0
///                                    : MODE_1                    0x1
///                                    : MODE_2                    0x2
///                                    : MODE_5                    0x5
///                                    : MODE_6                    0x6
///               %%        23         # Stuffing bits...
///     # # ----------------------------------------------------------
/// $ENDOFINTERFACE  # size:     516B, bits:     451b, padding:     0B
////////////////////////////////////////////////////////////
#ifndef h_smSysCtl
#define h_smSysCtl (){}

    #define     RA_smSysCtl_SM_ID                              0x0000

    #define     BA_smSysCtl_SM_ID_REV_ID                       0x0000
    #define     B16smSysCtl_SM_ID_REV_ID                       0x0000
    #define   LSb32smSysCtl_SM_ID_REV_ID                          0
    #define   LSb16smSysCtl_SM_ID_REV_ID                          0
    #define       bsmSysCtl_SM_ID_REV_ID                       4
    #define   MSK32smSysCtl_SM_ID_REV_ID                          0x0000000F

    #define     BA_smSysCtl_SM_ID_PART_ID                      0x0000
    #define     B16smSysCtl_SM_ID_PART_ID                      0x0000
    #define   LSb32smSysCtl_SM_ID_PART_ID                         4
    #define   LSb16smSysCtl_SM_ID_PART_ID                         4
    #define       bsmSysCtl_SM_ID_PART_ID                      16
    #define   MSK32smSysCtl_SM_ID_PART_ID                         0x000FFFF0

    #define     BA_smSysCtl_SM_ID_MFC_ID                       0x0002
    #define     B16smSysCtl_SM_ID_MFC_ID                       0x0002
    #define   LSb32smSysCtl_SM_ID_MFC_ID                          20
    #define   LSb16smSysCtl_SM_ID_MFC_ID                          4
    #define       bsmSysCtl_SM_ID_MFC_ID                       12
    #define   MSK32smSysCtl_SM_ID_MFC_ID                          0xFFF00000
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_CPU_CTRL                        0x0004

    #define     BA_smSysCtl_SM_CPU_CTRL_CPU_RST_GO             0x0004
    #define     B16smSysCtl_SM_CPU_CTRL_CPU_RST_GO             0x0004
    #define   LSb32smSysCtl_SM_CPU_CTRL_CPU_RST_GO                0
    #define   LSb16smSysCtl_SM_CPU_CTRL_CPU_RST_GO                0
    #define       bsmSysCtl_SM_CPU_CTRL_CPU_RST_GO             1
    #define   MSK32smSysCtl_SM_CPU_CTRL_CPU_RST_GO                0x00000001

    #define     BA_smSysCtl_SM_CPU_CTRL_CPU_VINITHI            0x0004
    #define     B16smSysCtl_SM_CPU_CTRL_CPU_VINITHI            0x0004
    #define   LSb32smSysCtl_SM_CPU_CTRL_CPU_VINITHI               1
    #define   LSb16smSysCtl_SM_CPU_CTRL_CPU_VINITHI               1
    #define       bsmSysCtl_SM_CPU_CTRL_CPU_VINITHI            1
    #define   MSK32smSysCtl_SM_CPU_CTRL_CPU_VINITHI               0x00000002

    #define     BA_smSysCtl_SM_CPU_CTRL_CPU_INITRAM            0x0004
    #define     B16smSysCtl_SM_CPU_CTRL_CPU_INITRAM            0x0004
    #define   LSb32smSysCtl_SM_CPU_CTRL_CPU_INITRAM               2
    #define   LSb16smSysCtl_SM_CPU_CTRL_CPU_INITRAM               2
    #define       bsmSysCtl_SM_CPU_CTRL_CPU_INITRAM            1
    #define   MSK32smSysCtl_SM_CPU_CTRL_CPU_INITRAM               0x00000004

    #define     BA_smSysCtl_SM_CPU_CTRL_CPU_BIGEND             0x0004
    #define     B16smSysCtl_SM_CPU_CTRL_CPU_BIGEND             0x0004
    #define   LSb32smSysCtl_SM_CPU_CTRL_CPU_BIGEND                3
    #define   LSb16smSysCtl_SM_CPU_CTRL_CPU_BIGEND                3
    #define       bsmSysCtl_SM_CPU_CTRL_CPU_BIGEND             1
    #define   MSK32smSysCtl_SM_CPU_CTRL_CPU_BIGEND                0x00000008
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_RST_CTRL                        0x0008

    #define     BA_smSysCtl_SM_RST_CTRL_SOC_RST_GO             0x0008
    #define     B16smSysCtl_SM_RST_CTRL_SOC_RST_GO             0x0008
    #define   LSb32smSysCtl_SM_RST_CTRL_SOC_RST_GO                0
    #define   LSb16smSysCtl_SM_RST_CTRL_SOC_RST_GO                0
    #define       bsmSysCtl_SM_RST_CTRL_SOC_RST_GO             1
    #define   MSK32smSysCtl_SM_RST_CTRL_SOC_RST_GO                0x00000001

    #define     BA_smSysCtl_SM_RST_CTRL_APB_RST_GO             0x0008
    #define     B16smSysCtl_SM_RST_CTRL_APB_RST_GO             0x0008
    #define   LSb32smSysCtl_SM_RST_CTRL_APB_RST_GO                1
    #define   LSb16smSysCtl_SM_RST_CTRL_APB_RST_GO                1
    #define       bsmSysCtl_SM_RST_CTRL_APB_RST_GO             1
    #define   MSK32smSysCtl_SM_RST_CTRL_APB_RST_GO                0x00000002

    #define     BA_smSysCtl_SM_RST_CTRL_SXBAR_RST_GO           0x0008
    #define     B16smSysCtl_SM_RST_CTRL_SXBAR_RST_GO           0x0008
    #define   LSb32smSysCtl_SM_RST_CTRL_SXBAR_RST_GO              2
    #define   LSb16smSysCtl_SM_RST_CTRL_SXBAR_RST_GO              2
    #define       bsmSysCtl_SM_RST_CTRL_SXBAR_RST_GO           1
    #define   MSK32smSysCtl_SM_RST_CTRL_SXBAR_RST_GO              0x00000004

    #define     BA_smSysCtl_SM_RST_CTRL_WOL_RST_GO             0x0008
    #define     B16smSysCtl_SM_RST_CTRL_WOL_RST_GO             0x0008
    #define   LSb32smSysCtl_SM_RST_CTRL_WOL_RST_GO                3
    #define   LSb16smSysCtl_SM_RST_CTRL_WOL_RST_GO                3
    #define       bsmSysCtl_SM_RST_CTRL_WOL_RST_GO             1
    #define   MSK32smSysCtl_SM_RST_CTRL_WOL_RST_GO                0x00000008

    #define     BA_smSysCtl_SM_RST_CTRL_FEPHY_RST_GO           0x0008
    #define     B16smSysCtl_SM_RST_CTRL_FEPHY_RST_GO           0x0008
    #define   LSb32smSysCtl_SM_RST_CTRL_FEPHY_RST_GO              4
    #define   LSb16smSysCtl_SM_RST_CTRL_FEPHY_RST_GO              4
    #define       bsmSysCtl_SM_RST_CTRL_FEPHY_RST_GO           1
    #define   MSK32smSysCtl_SM_RST_CTRL_FEPHY_RST_GO              0x00000010
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_RST_STATUS                      0x000C

    #define     BA_smSysCtl_SM_RST_STATUS_RST_WD_0             0x000C
    #define     B16smSysCtl_SM_RST_STATUS_RST_WD_0             0x000C
    #define   LSb32smSysCtl_SM_RST_STATUS_RST_WD_0                0
    #define   LSb16smSysCtl_SM_RST_STATUS_RST_WD_0                0
    #define       bsmSysCtl_SM_RST_STATUS_RST_WD_0             1
    #define   MSK32smSysCtl_SM_RST_STATUS_RST_WD_0                0x00000001

    #define     BA_smSysCtl_SM_RST_STATUS_RST_WD_1             0x000C
    #define     B16smSysCtl_SM_RST_STATUS_RST_WD_1             0x000C
    #define   LSb32smSysCtl_SM_RST_STATUS_RST_WD_1                1
    #define   LSb16smSysCtl_SM_RST_STATUS_RST_WD_1                1
    #define       bsmSysCtl_SM_RST_STATUS_RST_WD_1             1
    #define   MSK32smSysCtl_SM_RST_STATUS_RST_WD_1                0x00000002

    #define     BA_smSysCtl_SM_RST_STATUS_RST_WD_2             0x000C
    #define     B16smSysCtl_SM_RST_STATUS_RST_WD_2             0x000C
    #define   LSb32smSysCtl_SM_RST_STATUS_RST_WD_2                2
    #define   LSb16smSysCtl_SM_RST_STATUS_RST_WD_2                2
    #define       bsmSysCtl_SM_RST_STATUS_RST_WD_2             1
    #define   MSK32smSysCtl_SM_RST_STATUS_RST_WD_2                0x00000004
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_STRP_STATUS                     0x0010

    #define     BA_smSysCtl_SM_STRP_STATUS_BOOT_MODE           0x0010
    #define     B16smSysCtl_SM_STRP_STATUS_BOOT_MODE           0x0010
    #define   LSb32smSysCtl_SM_STRP_STATUS_BOOT_MODE              0
    #define   LSb16smSysCtl_SM_STRP_STATUS_BOOT_MODE              0
    #define       bsmSysCtl_SM_STRP_STATUS_BOOT_MODE           2
    #define   MSK32smSysCtl_SM_STRP_STATUS_BOOT_MODE              0x00000003

    #define     BA_smSysCtl_SM_STRP_STATUS_STRP_2              0x0010
    #define     B16smSysCtl_SM_STRP_STATUS_STRP_2              0x0010
    #define   LSb32smSysCtl_SM_STRP_STATUS_STRP_2                 2
    #define   LSb16smSysCtl_SM_STRP_STATUS_STRP_2                 2
    #define       bsmSysCtl_SM_STRP_STATUS_STRP_2              1
    #define   MSK32smSysCtl_SM_STRP_STATUS_STRP_2                 0x00000004

    #define     BA_smSysCtl_SM_STRP_STATUS_STRP_3              0x0010
    #define     B16smSysCtl_SM_STRP_STATUS_STRP_3              0x0010
    #define   LSb32smSysCtl_SM_STRP_STATUS_STRP_3                 3
    #define   LSb16smSysCtl_SM_STRP_STATUS_STRP_3                 3
    #define       bsmSysCtl_SM_STRP_STATUS_STRP_3              1
    #define   MSK32smSysCtl_SM_STRP_STATUS_STRP_3                 0x00000008
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_CTRL                            0x0014

    #define     BA_smSysCtl_SM_CTRL_ISO_EN                     0x0014
    #define     B16smSysCtl_SM_CTRL_ISO_EN                     0x0014
    #define   LSb32smSysCtl_SM_CTRL_ISO_EN                        0
    #define   LSb16smSysCtl_SM_CTRL_ISO_EN                        0
    #define       bsmSysCtl_SM_CTRL_ISO_EN                     1
    #define   MSK32smSysCtl_SM_CTRL_ISO_EN                        0x00000001

    #define     BA_smSysCtl_SM_CTRL_SM2SOC_SW_INTR             0x0014
    #define     B16smSysCtl_SM_CTRL_SM2SOC_SW_INTR             0x0014
    #define   LSb32smSysCtl_SM_CTRL_SM2SOC_SW_INTR                1
    #define   LSb16smSysCtl_SM_CTRL_SM2SOC_SW_INTR                1
    #define       bsmSysCtl_SM_CTRL_SM2SOC_SW_INTR             1
    #define   MSK32smSysCtl_SM_CTRL_SM2SOC_SW_INTR                0x00000002

    #define     BA_smSysCtl_SM_CTRL_SOC2SM_SW_INTR             0x0014
    #define     B16smSysCtl_SM_CTRL_SOC2SM_SW_INTR             0x0014
    #define   LSb32smSysCtl_SM_CTRL_SOC2SM_SW_INTR                2
    #define   LSb16smSysCtl_SM_CTRL_SOC2SM_SW_INTR                2
    #define       bsmSysCtl_SM_CTRL_SOC2SM_SW_INTR             1
    #define   MSK32smSysCtl_SM_CTRL_SOC2SM_SW_INTR                0x00000004

    #define     BA_smSysCtl_SM_CTRL_REV_0                      0x0014
    #define     B16smSysCtl_SM_CTRL_REV_0                      0x0014
    #define   LSb32smSysCtl_SM_CTRL_REV_0                         3
    #define   LSb16smSysCtl_SM_CTRL_REV_0                         3
    #define       bsmSysCtl_SM_CTRL_REV_0                      2
    #define   MSK32smSysCtl_SM_CTRL_REV_0                         0x00000018

    #define     BA_smSysCtl_SM_CTRL_ADC_SEL                    0x0014
    #define     B16smSysCtl_SM_CTRL_ADC_SEL                    0x0014
    #define   LSb32smSysCtl_SM_CTRL_ADC_SEL                       5
    #define   LSb16smSysCtl_SM_CTRL_ADC_SEL                       5
    #define       bsmSysCtl_SM_CTRL_ADC_SEL                    4
    #define   MSK32smSysCtl_SM_CTRL_ADC_SEL                       0x000001E0

    #define     BA_smSysCtl_SM_CTRL_ADC_PU                     0x0015
    #define     B16smSysCtl_SM_CTRL_ADC_PU                     0x0014
    #define   LSb32smSysCtl_SM_CTRL_ADC_PU                        9
    #define   LSb16smSysCtl_SM_CTRL_ADC_PU                        9
    #define       bsmSysCtl_SM_CTRL_ADC_PU                     1
    #define   MSK32smSysCtl_SM_CTRL_ADC_PU                        0x00000200

    #define     BA_smSysCtl_SM_CTRL_ADC_CKSEL                  0x0015
    #define     B16smSysCtl_SM_CTRL_ADC_CKSEL                  0x0014
    #define   LSb32smSysCtl_SM_CTRL_ADC_CKSEL                     10
    #define   LSb16smSysCtl_SM_CTRL_ADC_CKSEL                     10
    #define       bsmSysCtl_SM_CTRL_ADC_CKSEL                  2
    #define   MSK32smSysCtl_SM_CTRL_ADC_CKSEL                     0x00000C00

    #define     BA_smSysCtl_SM_CTRL_ADC_START                  0x0015
    #define     B16smSysCtl_SM_CTRL_ADC_START                  0x0014
    #define   LSb32smSysCtl_SM_CTRL_ADC_START                     12
    #define   LSb16smSysCtl_SM_CTRL_ADC_START                     12
    #define       bsmSysCtl_SM_CTRL_ADC_START                  1
    #define   MSK32smSysCtl_SM_CTRL_ADC_START                     0x00001000

    #define     BA_smSysCtl_SM_CTRL_ADC_RESET                  0x0015
    #define     B16smSysCtl_SM_CTRL_ADC_RESET                  0x0014
    #define   LSb32smSysCtl_SM_CTRL_ADC_RESET                     13
    #define   LSb16smSysCtl_SM_CTRL_ADC_RESET                     13
    #define       bsmSysCtl_SM_CTRL_ADC_RESET                  1
    #define   MSK32smSysCtl_SM_CTRL_ADC_RESET                     0x00002000

    #define     BA_smSysCtl_SM_CTRL_ADC_BG_RDY                 0x0015
    #define     B16smSysCtl_SM_CTRL_ADC_BG_RDY                 0x0014
    #define   LSb32smSysCtl_SM_CTRL_ADC_BG_RDY                    14
    #define   LSb16smSysCtl_SM_CTRL_ADC_BG_RDY                    14
    #define       bsmSysCtl_SM_CTRL_ADC_BG_RDY                 1
    #define   MSK32smSysCtl_SM_CTRL_ADC_BG_RDY                    0x00004000

    #define     BA_smSysCtl_SM_CTRL_ADC_CONT                   0x0015
    #define     B16smSysCtl_SM_CTRL_ADC_CONT                   0x0014
    #define   LSb32smSysCtl_SM_CTRL_ADC_CONT                      15
    #define   LSb16smSysCtl_SM_CTRL_ADC_CONT                      15
    #define       bsmSysCtl_SM_CTRL_ADC_CONT                   1
    #define   MSK32smSysCtl_SM_CTRL_ADC_CONT                      0x00008000

    #define     BA_smSysCtl_SM_CTRL_ADC_BUF_EN                 0x0016
    #define     B16smSysCtl_SM_CTRL_ADC_BUF_EN                 0x0016
    #define   LSb32smSysCtl_SM_CTRL_ADC_BUF_EN                    16
    #define   LSb16smSysCtl_SM_CTRL_ADC_BUF_EN                    0
    #define       bsmSysCtl_SM_CTRL_ADC_BUF_EN                 1
    #define   MSK32smSysCtl_SM_CTRL_ADC_BUF_EN                    0x00010000

    #define     BA_smSysCtl_SM_CTRL_ADC_VREF_SEL               0x0016
    #define     B16smSysCtl_SM_CTRL_ADC_VREF_SEL               0x0016
    #define   LSb32smSysCtl_SM_CTRL_ADC_VREF_SEL                  17
    #define   LSb16smSysCtl_SM_CTRL_ADC_VREF_SEL                  1
    #define       bsmSysCtl_SM_CTRL_ADC_VREF_SEL               1
    #define   MSK32smSysCtl_SM_CTRL_ADC_VREF_SEL                  0x00020000

    #define     BA_smSysCtl_SM_CTRL_ADC_ROTATE_SEL             0x0016
    #define     B16smSysCtl_SM_CTRL_ADC_ROTATE_SEL             0x0016
    #define   LSb32smSysCtl_SM_CTRL_ADC_ROTATE_SEL                18
    #define   LSb16smSysCtl_SM_CTRL_ADC_ROTATE_SEL                2
    #define       bsmSysCtl_SM_CTRL_ADC_ROTATE_SEL             1
    #define   MSK32smSysCtl_SM_CTRL_ADC_ROTATE_SEL                0x00040000

    #define     BA_smSysCtl_SM_CTRL_TSEN_EN                    0x0016
    #define     B16smSysCtl_SM_CTRL_TSEN_EN                    0x0016
    #define   LSb32smSysCtl_SM_CTRL_TSEN_EN                       19
    #define   LSb16smSysCtl_SM_CTRL_TSEN_EN                       3
    #define       bsmSysCtl_SM_CTRL_TSEN_EN                    1
    #define   MSK32smSysCtl_SM_CTRL_TSEN_EN                       0x00080000

    #define     BA_smSysCtl_SM_CTRL_TSEN_CLK_SEL               0x0016
    #define     B16smSysCtl_SM_CTRL_TSEN_CLK_SEL               0x0016
    #define   LSb32smSysCtl_SM_CTRL_TSEN_CLK_SEL                  20
    #define   LSb16smSysCtl_SM_CTRL_TSEN_CLK_SEL                  4
    #define       bsmSysCtl_SM_CTRL_TSEN_CLK_SEL               1
    #define   MSK32smSysCtl_SM_CTRL_TSEN_CLK_SEL                  0x00100000

    #define     BA_smSysCtl_SM_CTRL_TSEN_MODE_SEL              0x0016
    #define     B16smSysCtl_SM_CTRL_TSEN_MODE_SEL              0x0016
    #define   LSb32smSysCtl_SM_CTRL_TSEN_MODE_SEL                 21
    #define   LSb16smSysCtl_SM_CTRL_TSEN_MODE_SEL                 5
    #define       bsmSysCtl_SM_CTRL_TSEN_MODE_SEL              1
    #define   MSK32smSysCtl_SM_CTRL_TSEN_MODE_SEL                 0x00200000

    #define     BA_smSysCtl_SM_CTRL_TSEN_ADC_CAL               0x0016
    #define     B16smSysCtl_SM_CTRL_TSEN_ADC_CAL               0x0016
    #define   LSb32smSysCtl_SM_CTRL_TSEN_ADC_CAL                  22
    #define   LSb16smSysCtl_SM_CTRL_TSEN_ADC_CAL                  6
    #define       bsmSysCtl_SM_CTRL_TSEN_ADC_CAL               2
    #define   MSK32smSysCtl_SM_CTRL_TSEN_ADC_CAL                  0x00C00000

    #define     BA_smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL           0x0017
    #define     B16smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL           0x0016
    #define   LSb32smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL              24
    #define   LSb16smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL              8
    #define       bsmSysCtl_SM_CTRL_TSEN_ADC_TST_SEL           5
    #define   MSK32smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL              0x1F000000

    #define     BA_smSysCtl_SM_CTRL_TSEN_RESET                 0x0017
    #define     B16smSysCtl_SM_CTRL_TSEN_RESET                 0x0016
    #define   LSb32smSysCtl_SM_CTRL_TSEN_RESET                    29
    #define   LSb16smSysCtl_SM_CTRL_TSEN_RESET                    13
    #define       bsmSysCtl_SM_CTRL_TSEN_RESET                 1
    #define   MSK32smSysCtl_SM_CTRL_TSEN_RESET                    0x20000000

    #define     BA_smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN            0x0017
    #define     B16smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN            0x0016
    #define   LSb32smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN               30
    #define   LSb16smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN               14
    #define       bsmSysCtl_SM_CTRL_TSEN_ADC_ISO_EN            1
    #define   MSK32smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN               0x40000000
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_ADC_CTRL                        0x0018

    #define     BA_smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT            0x0018
    #define     B16smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT            0x0018
    #define   LSb32smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT               0
    #define   LSb16smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT               0
    #define       bsmSysCtl_SM_ADC_CTRL_TSEN_DAT_LT            5
    #define   MSK32smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT               0x0000001F

    #define     BA_smSysCtl_SM_ADC_CTRL_ADC_DAT_LT             0x0018
    #define     B16smSysCtl_SM_ADC_CTRL_ADC_DAT_LT             0x0018
    #define   LSb32smSysCtl_SM_ADC_CTRL_ADC_DAT_LT                5
    #define   LSb16smSysCtl_SM_ADC_CTRL_ADC_DAT_LT                5
    #define       bsmSysCtl_SM_ADC_CTRL_ADC_DAT_LT             5
    #define   MSK32smSysCtl_SM_ADC_CTRL_ADC_DAT_LT                0x000003E0
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_ADC_STATUS                      0x001C

    #define     BA_smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY            0
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY            0
    #define       bsmSysCtl_SM_ADC_STATUS_CH0_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY            0x00000001

    #define     BA_smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY            1
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY            1
    #define       bsmSysCtl_SM_ADC_STATUS_CH1_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY            0x00000002

    #define     BA_smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY            2
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY            2
    #define       bsmSysCtl_SM_ADC_STATUS_CH2_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY            0x00000004

    #define     BA_smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY            3
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY            3
    #define       bsmSysCtl_SM_ADC_STATUS_CH3_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY            0x00000008

    #define     BA_smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY            4
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY            4
    #define       bsmSysCtl_SM_ADC_STATUS_CH4_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY            0x00000010

    #define     BA_smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY            5
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY            5
    #define       bsmSysCtl_SM_ADC_STATUS_CH5_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY            0x00000020

    #define     BA_smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY            6
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY            6
    #define       bsmSysCtl_SM_ADC_STATUS_CH6_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY            0x00000040

    #define     BA_smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY         0x001C
    #define     B16smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY            7
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY            7
    #define       bsmSysCtl_SM_ADC_STATUS_CH7_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY            0x00000080

    #define     BA_smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY         0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY            8
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY            8
    #define       bsmSysCtl_SM_ADC_STATUS_CH8_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY            0x00000100

    #define     BA_smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY         0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY         0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY            9
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY            9
    #define       bsmSysCtl_SM_ADC_STATUS_CH9_DATA_RDY         1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY            0x00000200

    #define     BA_smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY        0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY        0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY           10
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY           10
    #define       bsmSysCtl_SM_ADC_STATUS_CH10_DATA_RDY        1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY           0x00000400

    #define     BA_smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY        0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY        0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY           11
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY           11
    #define       bsmSysCtl_SM_ADC_STATUS_CH11_DATA_RDY        1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY           0x00000800

    #define     BA_smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY        0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY        0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY           12
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY           12
    #define       bsmSysCtl_SM_ADC_STATUS_CH12_DATA_RDY        1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY           0x00001000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY        0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY        0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY           13
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY           13
    #define       bsmSysCtl_SM_ADC_STATUS_CH13_DATA_RDY        1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY           0x00002000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY        0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY        0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY           14
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY           14
    #define       bsmSysCtl_SM_ADC_STATUS_CH14_DATA_RDY        1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY           0x00004000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY        0x001D
    #define     B16smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY        0x001C
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY           15
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY           15
    #define       bsmSysCtl_SM_ADC_STATUS_CH15_DATA_RDY        1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY           0x00008000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH0_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH0_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH0_INT_EN              16
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH0_INT_EN              0
    #define       bsmSysCtl_SM_ADC_STATUS_CH0_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH0_INT_EN              0x00010000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH1_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH1_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH1_INT_EN              17
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH1_INT_EN              1
    #define       bsmSysCtl_SM_ADC_STATUS_CH1_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH1_INT_EN              0x00020000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH2_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH2_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH2_INT_EN              18
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH2_INT_EN              2
    #define       bsmSysCtl_SM_ADC_STATUS_CH2_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH2_INT_EN              0x00040000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH3_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH3_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH3_INT_EN              19
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH3_INT_EN              3
    #define       bsmSysCtl_SM_ADC_STATUS_CH3_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH3_INT_EN              0x00080000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH4_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH4_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH4_INT_EN              20
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH4_INT_EN              4
    #define       bsmSysCtl_SM_ADC_STATUS_CH4_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH4_INT_EN              0x00100000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH5_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH5_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH5_INT_EN              21
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH5_INT_EN              5
    #define       bsmSysCtl_SM_ADC_STATUS_CH5_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH5_INT_EN              0x00200000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH6_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH6_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH6_INT_EN              22
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH6_INT_EN              6
    #define       bsmSysCtl_SM_ADC_STATUS_CH6_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH6_INT_EN              0x00400000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH7_INT_EN           0x001E
    #define     B16smSysCtl_SM_ADC_STATUS_CH7_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH7_INT_EN              23
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH7_INT_EN              7
    #define       bsmSysCtl_SM_ADC_STATUS_CH7_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH7_INT_EN              0x00800000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH8_INT_EN           0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH8_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH8_INT_EN              24
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH8_INT_EN              8
    #define       bsmSysCtl_SM_ADC_STATUS_CH8_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH8_INT_EN              0x01000000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH9_INT_EN           0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH9_INT_EN           0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH9_INT_EN              25
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH9_INT_EN              9
    #define       bsmSysCtl_SM_ADC_STATUS_CH9_INT_EN           1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH9_INT_EN              0x02000000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH10_INT_EN          0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH10_INT_EN          0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH10_INT_EN             26
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH10_INT_EN             10
    #define       bsmSysCtl_SM_ADC_STATUS_CH10_INT_EN          1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH10_INT_EN             0x04000000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH11_INT_EN          0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH11_INT_EN          0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH11_INT_EN             27
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH11_INT_EN             11
    #define       bsmSysCtl_SM_ADC_STATUS_CH11_INT_EN          1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH11_INT_EN             0x08000000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH12_INT_EN          0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH12_INT_EN          0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH12_INT_EN             28
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH12_INT_EN             12
    #define       bsmSysCtl_SM_ADC_STATUS_CH12_INT_EN          1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH12_INT_EN             0x10000000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH13_INT_EN          0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH13_INT_EN          0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH13_INT_EN             29
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH13_INT_EN             13
    #define       bsmSysCtl_SM_ADC_STATUS_CH13_INT_EN          1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH13_INT_EN             0x20000000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH14_INT_EN          0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH14_INT_EN          0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH14_INT_EN             30
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH14_INT_EN             14
    #define       bsmSysCtl_SM_ADC_STATUS_CH14_INT_EN          1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH14_INT_EN             0x40000000

    #define     BA_smSysCtl_SM_ADC_STATUS_CH15_INT_EN          0x001F
    #define     B16smSysCtl_SM_ADC_STATUS_CH15_INT_EN          0x001E
    #define   LSb32smSysCtl_SM_ADC_STATUS_CH15_INT_EN             31
    #define   LSb16smSysCtl_SM_ADC_STATUS_CH15_INT_EN             15
    #define       bsmSysCtl_SM_ADC_STATUS_CH15_INT_EN          1
    #define   MSK32smSysCtl_SM_ADC_STATUS_CH15_INT_EN             0x80000000
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_ADC_DATA                        0x0020

    #define     BA_smSysCtl_SM_ADC_DATA_ADC_DATA               0x0020
    #define     B16smSysCtl_SM_ADC_DATA_ADC_DATA               0x0020
    #define   LSb32smSysCtl_SM_ADC_DATA_ADC_DATA                  0
    #define   LSb16smSysCtl_SM_ADC_DATA_ADC_DATA                  0
    #define       bsmSysCtl_SM_ADC_DATA_ADC_DATA               10
    #define   MSK32smSysCtl_SM_ADC_DATA_ADC_DATA                  0x000003FF
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_ADC_STATUS                    0x0024

    #define     BA_smSysCtl_TSEN_ADC_STATUS_DATA_RDY           0x0024
    #define     B16smSysCtl_TSEN_ADC_STATUS_DATA_RDY           0x0024
    #define   LSb32smSysCtl_TSEN_ADC_STATUS_DATA_RDY              0
    #define   LSb16smSysCtl_TSEN_ADC_STATUS_DATA_RDY              0
    #define       bsmSysCtl_TSEN_ADC_STATUS_DATA_RDY           1
    #define   MSK32smSysCtl_TSEN_ADC_STATUS_DATA_RDY              0x00000001

    #define     BA_smSysCtl_TSEN_ADC_STATUS_INT_EN             0x0024
    #define     B16smSysCtl_TSEN_ADC_STATUS_INT_EN             0x0024
    #define   LSb32smSysCtl_TSEN_ADC_STATUS_INT_EN                1
    #define   LSb16smSysCtl_TSEN_ADC_STATUS_INT_EN                1
    #define       bsmSysCtl_TSEN_ADC_STATUS_INT_EN             1
    #define   MSK32smSysCtl_TSEN_ADC_STATUS_INT_EN                0x00000002
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_ADC_DATA                      0x0028

    #define     BA_smSysCtl_TSEN_ADC_DATA_ADC_DATA             0x0028
    #define     B16smSysCtl_TSEN_ADC_DATA_ADC_DATA             0x0028
    #define   LSb32smSysCtl_TSEN_ADC_DATA_ADC_DATA                0
    #define   LSb16smSysCtl_TSEN_ADC_DATA_ADC_DATA                0
    #define       bsmSysCtl_TSEN_ADC_DATA_ADC_DATA             12
    #define   MSK32smSysCtl_TSEN_ADC_DATA_ADC_DATA                0x00000FFF
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_CHK_CTRL                      0x002C

    #define     BA_smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX        0x002C
    #define     B16smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX        0x002C
    #define   LSb32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX           0
    #define   LSb16smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX           0
    #define       bsmSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX        12
    #define   MSK32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX           0x00000FFF

    #define     BA_smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN        0x002D
    #define     B16smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN        0x002C
    #define   LSb32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN           12
    #define   LSb16smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN           12
    #define       bsmSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN        12
    #define   MSK32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN           0x00FFF000

    #define     BA_smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL    0x002F
    #define     B16smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL    0x002E
    #define   LSb32smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL       24
    #define   LSb16smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL       8
    #define       bsmSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL    1
    #define   MSK32smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL       0x01000000
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_DATA_STATUS                   0x0030

    #define     BA_smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL     0x0030
    #define     B16smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL     0x0030
    #define   LSb32smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL        0
    #define   LSb16smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL        0
    #define       bsmSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL     1
    #define   MSK32smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL        0x00000001

    #define     BA_smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL     0x0030
    #define     B16smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL     0x0030
    #define   LSb32smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL        1
    #define   LSb16smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL        1
    #define       bsmSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL     1
    #define   MSK32smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL        0x00000002
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_BOOT_STATUS                     0x0034

    #define     BA_smSysCtl_SM_BOOT_STATUS_MODE                0x0034
    #define     B16smSysCtl_SM_BOOT_STATUS_MODE                0x0034
    #define   LSb32smSysCtl_SM_BOOT_STATUS_MODE                   0
    #define   LSb16smSysCtl_SM_BOOT_STATUS_MODE                   0
    #define       bsmSysCtl_SM_BOOT_STATUS_MODE                32
    #define   MSK32smSysCtl_SM_BOOT_STATUS_MODE                   0xFFFFFFFF
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_LDO_CTRL                        0x0038

    #define     BA_smSysCtl_SM_LDO_CTRL_TEST_SEL               0x0038
    #define     B16smSysCtl_SM_LDO_CTRL_TEST_SEL               0x0038
    #define   LSb32smSysCtl_SM_LDO_CTRL_TEST_SEL                  0
    #define   LSb16smSysCtl_SM_LDO_CTRL_TEST_SEL                  0
    #define       bsmSysCtl_SM_LDO_CTRL_TEST_SEL               3
    #define   MSK32smSysCtl_SM_LDO_CTRL_TEST_SEL                  0x00000007

    #define     BA_smSysCtl_SM_LDO_CTRL_VOUT_SEL               0x0038
    #define     B16smSysCtl_SM_LDO_CTRL_VOUT_SEL               0x0038
    #define   LSb32smSysCtl_SM_LDO_CTRL_VOUT_SEL                  3
    #define   LSb16smSysCtl_SM_LDO_CTRL_VOUT_SEL                  3
    #define       bsmSysCtl_SM_LDO_CTRL_VOUT_SEL               3
    #define   MSK32smSysCtl_SM_LDO_CTRL_VOUT_SEL                  0x00000038

    #define     BA_smSysCtl_SM_LDO_CTRL_TEST_EN                0x0038
    #define     B16smSysCtl_SM_LDO_CTRL_TEST_EN                0x0038
    #define   LSb32smSysCtl_SM_LDO_CTRL_TEST_EN                   6
    #define   LSb16smSysCtl_SM_LDO_CTRL_TEST_EN                   6
    #define       bsmSysCtl_SM_LDO_CTRL_TEST_EN                1
    #define   MSK32smSysCtl_SM_LDO_CTRL_TEST_EN                   0x00000040

    #define     BA_smSysCtl_SM_LDO_CTRL_LDO_RDY                0x0038
    #define     B16smSysCtl_SM_LDO_CTRL_LDO_RDY                0x0038
    #define   LSb32smSysCtl_SM_LDO_CTRL_LDO_RDY                   7
    #define   LSb16smSysCtl_SM_LDO_CTRL_LDO_RDY                   7
    #define       bsmSysCtl_SM_LDO_CTRL_LDO_RDY                1
    #define   MSK32smSysCtl_SM_LDO_CTRL_LDO_RDY                   0x00000080

    #define     BA_smSysCtl_SM_LDO_CTRL_CHP_EN_1P1             0x0039
    #define     B16smSysCtl_SM_LDO_CTRL_CHP_EN_1P1             0x0038
    #define   LSb32smSysCtl_SM_LDO_CTRL_CHP_EN_1P1                8
    #define   LSb16smSysCtl_SM_LDO_CTRL_CHP_EN_1P1                8
    #define       bsmSysCtl_SM_LDO_CTRL_CHP_EN_1P1             1
    #define   MSK32smSysCtl_SM_LDO_CTRL_CHP_EN_1P1                0x00000100

    #define     BA_smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1          0x0039
    #define     B16smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1          0x0038
    #define   LSb32smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1             9
    #define   LSb16smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1             9
    #define       bsmSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1          1
    #define   MSK32smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1             0x00000200
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_WDT_MASK                        0x003C

    #define     BA_smSysCtl_SM_WDT_MASK_SM_RST                 0x003C
    #define     B16smSysCtl_SM_WDT_MASK_SM_RST                 0x003C
    #define   LSb32smSysCtl_SM_WDT_MASK_SM_RST                    0
    #define   LSb16smSysCtl_SM_WDT_MASK_SM_RST                    0
    #define       bsmSysCtl_SM_WDT_MASK_SM_RST                 3
    #define   MSK32smSysCtl_SM_WDT_MASK_SM_RST                    0x00000007

    #define     BA_smSysCtl_SM_WDT_MASK_SOC_RST                0x003C
    #define     B16smSysCtl_SM_WDT_MASK_SOC_RST                0x003C
    #define   LSb32smSysCtl_SM_WDT_MASK_SOC_RST                   3
    #define   LSb16smSysCtl_SM_WDT_MASK_SOC_RST                   3
    #define       bsmSysCtl_SM_WDT_MASK_SOC_RST                3
    #define   MSK32smSysCtl_SM_WDT_MASK_SOC_RST                   0x00000038
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_CLK_CTRL                        0x0040

    #define     BA_smSysCtl_SM_CLK_CTRL_tsenClkSel             0x0040
    #define     B16smSysCtl_SM_CLK_CTRL_tsenClkSel             0x0040
    #define   LSb32smSysCtl_SM_CLK_CTRL_tsenClkSel                0
    #define   LSb16smSysCtl_SM_CLK_CTRL_tsenClkSel                0
    #define       bsmSysCtl_SM_CLK_CTRL_tsenClkSel             1
    #define   MSK32smSysCtl_SM_CLK_CTRL_tsenClkSel                0x00000001

    #define     BA_smSysCtl_SM_CLK_CTRL_tsenClkEn              0x0040
    #define     B16smSysCtl_SM_CLK_CTRL_tsenClkEn              0x0040
    #define   LSb32smSysCtl_SM_CLK_CTRL_tsenClkEn                 1
    #define   LSb16smSysCtl_SM_CLK_CTRL_tsenClkEn                 1
    #define       bsmSysCtl_SM_CLK_CTRL_tsenClkEn              1
    #define   MSK32smSysCtl_SM_CLK_CTRL_tsenClkEn                 0x00000002

    #define     BA_smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel          0x0040
    #define     B16smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel          0x0040
    #define   LSb32smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel             2
    #define   LSb16smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel             2
    #define       bsmSysCtl_SM_CLK_CTRL_ssmiiTxClkSel          1
    #define   MSK32smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel             0x00000004

    #define     BA_smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn           0x0040
    #define     B16smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn           0x0040
    #define   LSb32smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn              3
    #define   LSb16smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn              3
    #define       bsmSysCtl_SM_CLK_CTRL_ssmiiTxClkEn           1
    #define   MSK32smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn              0x00000008
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_smAnaGrpCtl                        0x0044

    #define     BA_smSysCtl_smAnaGrpCtl_pu                     0x0044
    #define     B16smSysCtl_smAnaGrpCtl_pu                     0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_pu                        0
    #define   LSb16smSysCtl_smAnaGrpCtl_pu                        0
    #define       bsmSysCtl_smAnaGrpCtl_pu                     1
    #define   MSK32smSysCtl_smAnaGrpCtl_pu                        0x00000001

    #define     BA_smSysCtl_smAnaGrpCtl_bgSel                  0x0044
    #define     B16smSysCtl_smAnaGrpCtl_bgSel                  0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_bgSel                     1
    #define   LSb16smSysCtl_smAnaGrpCtl_bgSel                     1
    #define       bsmSysCtl_smAnaGrpCtl_bgSel                  2
    #define   MSK32smSysCtl_smAnaGrpCtl_bgSel                     0x00000006

    #define     BA_smSysCtl_smAnaGrpCtl_puXtl                  0x0044
    #define     B16smSysCtl_smAnaGrpCtl_puXtl                  0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_puXtl                     3
    #define   LSb16smSysCtl_smAnaGrpCtl_puXtl                     3
    #define       bsmSysCtl_smAnaGrpCtl_puXtl                  1
    #define   MSK32smSysCtl_smAnaGrpCtl_puXtl                     0x00000008

    #define     BA_smSysCtl_smAnaGrpCtl_bypass                 0x0044
    #define     B16smSysCtl_smAnaGrpCtl_bypass                 0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_bypass                    4
    #define   LSb16smSysCtl_smAnaGrpCtl_bypass                    4
    #define       bsmSysCtl_smAnaGrpCtl_bypass                 1
    #define   MSK32smSysCtl_smAnaGrpCtl_bypass                    0x00000010

    #define     BA_smSysCtl_smAnaGrpCtl_gainX2                 0x0044
    #define     B16smSysCtl_smAnaGrpCtl_gainX2                 0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_gainX2                    5
    #define   LSb16smSysCtl_smAnaGrpCtl_gainX2                    5
    #define       bsmSysCtl_smAnaGrpCtl_gainX2                 1
    #define   MSK32smSysCtl_smAnaGrpCtl_gainX2                    0x00000020

    #define     BA_smSysCtl_smAnaGrpCtl_selClkDigDiv1          0x0044
    #define     B16smSysCtl_smAnaGrpCtl_selClkDigDiv1          0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_selClkDigDiv1             6
    #define   LSb16smSysCtl_smAnaGrpCtl_selClkDigDiv1             6
    #define       bsmSysCtl_smAnaGrpCtl_selClkDigDiv1          2
    #define   MSK32smSysCtl_smAnaGrpCtl_selClkDigDiv1             0x000000C0

    #define     BA_smSysCtl_smAnaGrpCtl_selClkDigDiv2          0x0045
    #define     B16smSysCtl_smAnaGrpCtl_selClkDigDiv2          0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_selClkDigDiv2             8
    #define   LSb16smSysCtl_smAnaGrpCtl_selClkDigDiv2             8
    #define       bsmSysCtl_smAnaGrpCtl_selClkDigDiv2          2
    #define   MSK32smSysCtl_smAnaGrpCtl_selClkDigDiv2             0x00000300

    #define     BA_smSysCtl_smAnaGrpCtl_selClkDigDiv3          0x0045
    #define     B16smSysCtl_smAnaGrpCtl_selClkDigDiv3          0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_selClkDigDiv3             10
    #define   LSb16smSysCtl_smAnaGrpCtl_selClkDigDiv3             10
    #define       bsmSysCtl_smAnaGrpCtl_selClkDigDiv3          2
    #define   MSK32smSysCtl_smAnaGrpCtl_selClkDigDiv3             0x00000C00

    #define     BA_smSysCtl_smAnaGrpCtl_selClkDigDiv4          0x0045
    #define     B16smSysCtl_smAnaGrpCtl_selClkDigDiv4          0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_selClkDigDiv4             12
    #define   LSb16smSysCtl_smAnaGrpCtl_selClkDigDiv4             12
    #define       bsmSysCtl_smAnaGrpCtl_selClkDigDiv4          2
    #define   MSK32smSysCtl_smAnaGrpCtl_selClkDigDiv4             0x00003000

    #define     BA_smSysCtl_smAnaGrpCtl_puOsc                  0x0045
    #define     B16smSysCtl_smAnaGrpCtl_puOsc                  0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_puOsc                     14
    #define   LSb16smSysCtl_smAnaGrpCtl_puOsc                     14
    #define       bsmSysCtl_smAnaGrpCtl_puOsc                  1
    #define   MSK32smSysCtl_smAnaGrpCtl_puOsc                     0x00004000

    #define     BA_smSysCtl_smAnaGrpCtl_speedOsc               0x0045
    #define     B16smSysCtl_smAnaGrpCtl_speedOsc               0x0044
    #define   LSb32smSysCtl_smAnaGrpCtl_speedOsc                  15
    #define   LSb16smSysCtl_smAnaGrpCtl_speedOsc                  15
    #define       bsmSysCtl_smAnaGrpCtl_speedOsc               2
    #define   MSK32smSysCtl_smAnaGrpCtl_speedOsc                  0x00018000

    #define     BA_smSysCtl_smAnaGrpCtl_testAna                0x0046
    #define     B16smSysCtl_smAnaGrpCtl_testAna                0x0046
    #define   LSb32smSysCtl_smAnaGrpCtl_testAna                   17
    #define   LSb16smSysCtl_smAnaGrpCtl_testAna                   1
    #define       bsmSysCtl_smAnaGrpCtl_testAna                4
    #define   MSK32smSysCtl_smAnaGrpCtl_testAna                   0x001E0000

    #define     BA_smSysCtl_smAnaGrpCtl_bgRdy                  0x0046
    #define     B16smSysCtl_smAnaGrpCtl_bgRdy                  0x0046
    #define   LSb32smSysCtl_smAnaGrpCtl_bgRdy                     21
    #define   LSb16smSysCtl_smAnaGrpCtl_bgRdy                     5
    #define       bsmSysCtl_smAnaGrpCtl_bgRdy                  1
    #define   MSK32smSysCtl_smAnaGrpCtl_bgRdy                     0x00200000

    #define     BA_smSysCtl_smAnaGrpCtl_reserve_in             0x0046
    #define     B16smSysCtl_smAnaGrpCtl_reserve_in             0x0046
    #define   LSb32smSysCtl_smAnaGrpCtl_reserve_in                22
    #define   LSb16smSysCtl_smAnaGrpCtl_reserve_in                6
    #define       bsmSysCtl_smAnaGrpCtl_reserve_in             10
    #define   MSK32smSysCtl_smAnaGrpCtl_reserve_in                0xFFC00000

    #define     RA_smSysCtl_smAnaGrpCtl1                       0x0048

    #define     BA_smSysCtl_smAnaGrpCtl_xtl_pecl_sel           0x0048
    #define     B16smSysCtl_smAnaGrpCtl_xtl_pecl_sel           0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_xtl_pecl_sel              0
    #define   LSb16smSysCtl_smAnaGrpCtl_xtl_pecl_sel              0
    #define       bsmSysCtl_smAnaGrpCtl_xtl_pecl_sel           1
    #define   MSK32smSysCtl_smAnaGrpCtl_xtl_pecl_sel              0x00000001

    #define     BA_smSysCtl_smAnaGrpCtl_vreg_1p2v_sel          0x0048
    #define     B16smSysCtl_smAnaGrpCtl_vreg_1p2v_sel          0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_vreg_1p2v_sel             1
    #define   LSb16smSysCtl_smAnaGrpCtl_vreg_1p2v_sel             1
    #define       bsmSysCtl_smAnaGrpCtl_vreg_1p2v_sel          2
    #define   MSK32smSysCtl_smAnaGrpCtl_vreg_1p2v_sel             0x00000006

    #define     BA_smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl     0x0048
    #define     B16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl     0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl        3
    #define   LSb16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl        3
    #define       bsmSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl     3
    #define   MSK32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl        0x00000038

    #define     BA_smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl    0x0048
    #define     B16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl    0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl       6
    #define   LSb16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl       6
    #define       bsmSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl    3
    #define   MSK32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl       0x000001C0

    #define     BA_smSysCtl_smAnaGrpCtl_term                   0x0049
    #define     B16smSysCtl_smAnaGrpCtl_term                   0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_term                      9
    #define   LSb16smSysCtl_smAnaGrpCtl_term                      9
    #define       bsmSysCtl_smAnaGrpCtl_term                   1
    #define   MSK32smSysCtl_smAnaGrpCtl_term                      0x00000200

    #define     BA_smSysCtl_smAnaGrpCtl_pu_pecl                0x0049
    #define     B16smSysCtl_smAnaGrpCtl_pu_pecl                0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_pu_pecl                   10
    #define   LSb16smSysCtl_smAnaGrpCtl_pu_pecl                   10
    #define       bsmSysCtl_smAnaGrpCtl_pu_pecl                1
    #define   MSK32smSysCtl_smAnaGrpCtl_pu_pecl                   0x00000400

    #define     BA_smSysCtl_smAnaGrpCtl_pecl_en                0x0049
    #define     B16smSysCtl_smAnaGrpCtl_pecl_en                0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_pecl_en                   11
    #define   LSb16smSysCtl_smAnaGrpCtl_pecl_en                   11
    #define       bsmSysCtl_smAnaGrpCtl_pecl_en                1
    #define   MSK32smSysCtl_smAnaGrpCtl_pecl_en                   0x00000800

    #define     BA_smSysCtl_smAnaGrpCtl_pu_limiter             0x0049
    #define     B16smSysCtl_smAnaGrpCtl_pu_limiter             0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_pu_limiter                12
    #define   LSb16smSysCtl_smAnaGrpCtl_pu_limiter                12
    #define       bsmSysCtl_smAnaGrpCtl_pu_limiter             1
    #define   MSK32smSysCtl_smAnaGrpCtl_pu_limiter                0x00001000

    #define     BA_smSysCtl_smAnaGrpCtl_limiter_dc_clk_en      0x0049
    #define     B16smSysCtl_smAnaGrpCtl_limiter_dc_clk_en      0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_limiter_dc_clk_en         13
    #define   LSb16smSysCtl_smAnaGrpCtl_limiter_dc_clk_en         13
    #define       bsmSysCtl_smAnaGrpCtl_limiter_dc_clk_en      1
    #define   MSK32smSysCtl_smAnaGrpCtl_limiter_dc_clk_en         0x00002000

    #define     BA_smSysCtl_smAnaGrpCtl_ipp_adj                0x0049
    #define     B16smSysCtl_smAnaGrpCtl_ipp_adj                0x0048
    #define   LSb32smSysCtl_smAnaGrpCtl_ipp_adj                   14
    #define   LSb16smSysCtl_smAnaGrpCtl_ipp_adj                   14
    #define       bsmSysCtl_smAnaGrpCtl_ipp_adj                2
    #define   MSK32smSysCtl_smAnaGrpCtl_ipp_adj                   0x0000C000

    #define     BA_smSysCtl_smAnaGrpCtl_icc_adj                0x004A
    #define     B16smSysCtl_smAnaGrpCtl_icc_adj                0x004A
    #define   LSb32smSysCtl_smAnaGrpCtl_icc_adj                   16
    #define   LSb16smSysCtl_smAnaGrpCtl_icc_adj                   0
    #define       bsmSysCtl_smAnaGrpCtl_icc_adj                2
    #define   MSK32smSysCtl_smAnaGrpCtl_icc_adj                   0x00030000

    #define     BA_smSysCtl_smAnaGrpCtl_ixtal                  0x004A
    #define     B16smSysCtl_smAnaGrpCtl_ixtal                  0x004A
    #define   LSb32smSysCtl_smAnaGrpCtl_ixtal                     18
    #define   LSb16smSysCtl_smAnaGrpCtl_ixtal                     2
    #define       bsmSysCtl_smAnaGrpCtl_ixtal                  2
    #define   MSK32smSysCtl_smAnaGrpCtl_ixtal                     0x000C0000

    #define     BA_smSysCtl_smAnaGrpCtl_icc10u_in_sel          0x004A
    #define     B16smSysCtl_smAnaGrpCtl_icc10u_in_sel          0x004A
    #define   LSb32smSysCtl_smAnaGrpCtl_icc10u_in_sel             20
    #define   LSb16smSysCtl_smAnaGrpCtl_icc10u_in_sel             4
    #define       bsmSysCtl_smAnaGrpCtl_icc10u_in_sel          1
    #define   MSK32smSysCtl_smAnaGrpCtl_icc10u_in_sel             0x00100000

    #define     BA_smSysCtl_smAnaGrpCtl_reserve_out            0x004A
    #define     B16smSysCtl_smAnaGrpCtl_reserve_out            0x004A
    #define   LSb32smSysCtl_smAnaGrpCtl_reserve_out               21
    #define   LSb16smSysCtl_smAnaGrpCtl_reserve_out               5
    #define       bsmSysCtl_smAnaGrpCtl_reserve_out            6
    #define   MSK32smSysCtl_smAnaGrpCtl_reserve_out               0x07E00000
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_CORE_CTRL                       0x004C

    #define     BA_smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE      0x004C
    #define     B16smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE      0x004C
    #define   LSb32smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE         0
    #define   LSb16smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE         0
    #define       bsmSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE      1
    #define   MSK32smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE         0x00000001

    #define     BA_smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE        0x004C
    #define     B16smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE        0x004C
    #define   LSb32smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE           1
    #define   LSb16smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE           1
    #define       bsmSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE        1
    #define   MSK32smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE           0x00000002

    #define     BA_smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE        0x004C
    #define     B16smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE        0x004C
    #define   LSb32smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE           2
    #define   LSb16smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE           2
    #define       bsmSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE        1
    #define   MSK32smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE           0x00000004

    #define     BA_smSysCtl_SM_CORE_CTRL_PAD_ZP                0x004C
    #define     B16smSysCtl_SM_CORE_CTRL_PAD_ZP                0x004C
    #define   LSb32smSysCtl_SM_CORE_CTRL_PAD_ZP                   3
    #define   LSb16smSysCtl_SM_CORE_CTRL_PAD_ZP                   3
    #define       bsmSysCtl_SM_CORE_CTRL_PAD_ZP                4
    #define   MSK32smSysCtl_SM_CORE_CTRL_PAD_ZP                   0x00000078

    #define     BA_smSysCtl_SM_CORE_CTRL_PAD_ZN                0x004C
    #define     B16smSysCtl_SM_CORE_CTRL_PAD_ZN                0x004C
    #define   LSb32smSysCtl_SM_CORE_CTRL_PAD_ZN                   7
    #define   LSb16smSysCtl_SM_CORE_CTRL_PAD_ZN                   7
    #define       bsmSysCtl_SM_CORE_CTRL_PAD_ZN                4
    #define   MSK32smSysCtl_SM_CORE_CTRL_PAD_ZN                   0x00000780
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_TEST                            0x0050

    #define     BA_smSysCtl_SM_TEST_ADC_TEST_FAIL              0x0050
    #define     B16smSysCtl_SM_TEST_ADC_TEST_FAIL              0x0050
    #define   LSb32smSysCtl_SM_TEST_ADC_TEST_FAIL                 0
    #define   LSb16smSysCtl_SM_TEST_ADC_TEST_FAIL                 0
    #define       bsmSysCtl_SM_TEST_ADC_TEST_FAIL              1
    #define   MSK32smSysCtl_SM_TEST_ADC_TEST_FAIL                 0x00000001
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_TEST_DATA0                      0x0054

    #define     BA_smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH        0x0054
    #define     B16smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH        0x0054
    #define   LSb32smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH           0
    #define   LSb16smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH           0
    #define       bsmSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH        10
    #define   MSK32smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH           0x000003FF
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_TEST_DATA1                      0x0058

    #define     BA_smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW         0x0058
    #define     B16smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW         0x0058
    #define   LSb32smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW            0
    #define   LSb16smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW            0
    #define       bsmSysCtl_SM_TEST_DATA1_ADC_DATA_LOW         10
    #define   MSK32smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW            0x000003FF
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_RWTC_CTRL_0                     0x005C

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW            0x005C
    #define     B16smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW            0x005C
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW               0
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW               0
    #define       bsmSysCtl_SM_RWTC_CTRL_0_RF1P_LOW            4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW               0x0000000F

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH           0x005C
    #define     B16smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH           0x005C
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH              4
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH              4
    #define       bsmSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH           4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH              0x000000F0

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW            0x005D
    #define     B16smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW            0x005C
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW               8
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW               8
    #define       bsmSysCtl_SM_RWTC_CTRL_0_RF2P_LOW            4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW               0x00000F00

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH           0x005D
    #define     B16smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH           0x005C
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH              12
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH              12
    #define       bsmSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH           4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH              0x0000F000

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW            0x005E
    #define     B16smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW            0x005E
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW               16
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW               0
    #define       bsmSysCtl_SM_RWTC_CTRL_0_SR1P_LOW            4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW               0x000F0000

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH           0x005E
    #define     B16smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH           0x005E
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH              20
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH              4
    #define       bsmSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH           4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH              0x00F00000

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW            0x005F
    #define     B16smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW            0x005E
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW               24
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW               8
    #define       bsmSysCtl_SM_RWTC_CTRL_0_SR2P_LOW            4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW               0x0F000000

    #define     BA_smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH           0x005F
    #define     B16smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH           0x005E
    #define   LSb32smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH              28
    #define   LSb16smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH              12
    #define       bsmSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH           4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH              0xF0000000
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_RWTC_CTRL_1                     0x0060

    #define     BA_smSysCtl_SM_RWTC_CTRL_1_ROM_LOW             0x0060
    #define     B16smSysCtl_SM_RWTC_CTRL_1_ROM_LOW             0x0060
    #define   LSb32smSysCtl_SM_RWTC_CTRL_1_ROM_LOW                0
    #define   LSb16smSysCtl_SM_RWTC_CTRL_1_ROM_LOW                0
    #define       bsmSysCtl_SM_RWTC_CTRL_1_ROM_LOW             5
    #define   MSK32smSysCtl_SM_RWTC_CTRL_1_ROM_LOW                0x0000001F

    #define     BA_smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH            0x0060
    #define     B16smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH            0x0060
    #define   LSb32smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH               5
    #define   LSb16smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH               5
    #define       bsmSysCtl_SM_RWTC_CTRL_1_ROM_HIGH            5
    #define   MSK32smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH               0x000003E0

    #define     BA_smSysCtl_SM_RWTC_CTRL_1_ACMEM               0x0061
    #define     B16smSysCtl_SM_RWTC_CTRL_1_ACMEM               0x0060
    #define   LSb32smSysCtl_SM_RWTC_CTRL_1_ACMEM                  10
    #define   LSb16smSysCtl_SM_RWTC_CTRL_1_ACMEM                  10
    #define       bsmSysCtl_SM_RWTC_CTRL_1_ACMEM               4
    #define   MSK32smSysCtl_SM_RWTC_CTRL_1_ACMEM                  0x00003C00
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_PORT_SEL_CTRL                   0x0064

    #define     BA_smSysCtl_SM_PORT_SEL_CTRL_TW2               0x0064
    #define     B16smSysCtl_SM_PORT_SEL_CTRL_TW2               0x0064
    #define   LSb32smSysCtl_SM_PORT_SEL_CTRL_TW2                  0
    #define   LSb16smSysCtl_SM_PORT_SEL_CTRL_TW2                  0
    #define       bsmSysCtl_SM_PORT_SEL_CTRL_TW2               1
    #define   MSK32smSysCtl_SM_PORT_SEL_CTRL_TW2                  0x00000001

    #define     BA_smSysCtl_SM_PORT_SEL_CTRL_URT1              0x0064
    #define     B16smSysCtl_SM_PORT_SEL_CTRL_URT1              0x0064
    #define   LSb32smSysCtl_SM_PORT_SEL_CTRL_URT1                 1
    #define   LSb16smSysCtl_SM_PORT_SEL_CTRL_URT1                 1
    #define       bsmSysCtl_SM_PORT_SEL_CTRL_URT1              1
    #define   MSK32smSysCtl_SM_PORT_SEL_CTRL_URT1                 0x00000002
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_ADC_RAW_DATA                  0x0068

    #define     BA_smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW    0x0068
    #define     B16smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW    0x0068
    #define   LSb32smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW       0
    #define   LSb16smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW       0
    #define       bsmSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW    12
    #define   MSK32smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW       0x00000FFF
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_ADC_CLK_DIV                   0x006C

    #define     BA_smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV           0x006C
    #define     B16smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV           0x006C
    #define   LSb32smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV              0
    #define   LSb16smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV              0
    #define       bsmSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV           3
    #define   MSK32smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV              0x00000007

    #define     BA_smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV          0x006C
    #define     B16smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV          0x006C
    #define   LSb32smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV             3
    #define   LSb16smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV             3
    #define       bsmSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV          4
    #define   MSK32smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV             0x00000078
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_ADC_CTRL                      0x0070

    #define     BA_smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ         0x0070
    #define     B16smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ         0x0070
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ            0
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ            0
    #define       bsmSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ         8
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ            0x000000FF

    #define     BA_smSysCtl_TSEN_ADC_CTRL_TSEN_START           0x0071
    #define     B16smSysCtl_TSEN_ADC_CTRL_TSEN_START           0x0070
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_TSEN_START              8
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_TSEN_START              8
    #define       bsmSysCtl_TSEN_ADC_CTRL_TSEN_START           1
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_TSEN_START              0x00000100

    #define     BA_smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM         0x0071
    #define     B16smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM         0x0070
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM            9
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM            9
    #define       bsmSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM         3
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM            0x00000E00

    #define     BA_smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN          0x0071
    #define     B16smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN          0x0070
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN             12
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN             12
    #define       bsmSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN          1
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN             0x00001000

    #define     BA_smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN         0x0071
    #define     B16smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN         0x0070
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN            13
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN            13
    #define       bsmSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN         2
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN            0x00006000

    #define     BA_smSysCtl_TSEN_ADC_CTRL_TSEN_CAL             0x0071
    #define     B16smSysCtl_TSEN_ADC_CTRL_TSEN_CAL             0x0070
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_TSEN_CAL                15
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_TSEN_CAL                15
    #define       bsmSysCtl_TSEN_ADC_CTRL_TSEN_CAL             2
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_TSEN_CAL                0x00018000

    #define     BA_smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD            0x0072
    #define     B16smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD            0x0072
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD               17
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD               1
    #define       bsmSysCtl_TSEN_ADC_CTRL_TSEN_RSVD            4
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD               0x001E0000

    #define     BA_smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL           0x0072
    #define     B16smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL           0x0072
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL              21
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL              5
    #define       bsmSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL           1
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL              0x00200000

    #define     BA_smSysCtl_TSEN_ADC_CTRL_BG_DTRIM             0x0072
    #define     B16smSysCtl_TSEN_ADC_CTRL_BG_DTRIM             0x0072
    #define   LSb32smSysCtl_TSEN_ADC_CTRL_BG_DTRIM                22
    #define   LSb16smSysCtl_TSEN_ADC_CTRL_BG_DTRIM                6
    #define       bsmSysCtl_TSEN_ADC_CTRL_BG_DTRIM             4
    #define   MSK32smSysCtl_TSEN_ADC_CTRL_BG_DTRIM                0x03C00000
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_TSEN_ADC_DBG                       0x0074

    #define     BA_smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL          0x0074
    #define     B16smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL          0x0074
    #define   LSb32smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL             0
    #define   LSb16smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL             0
    #define       bsmSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL          2
    #define   MSK32smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL             0x00000003
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_SM_DUMMY_REG                       0x0078

    #define     BA_smSysCtl_SM_DUMMY_REG_REG0                  0x0078
    #define     B16smSysCtl_SM_DUMMY_REG_REG0                  0x0078
    #define   LSb32smSysCtl_SM_DUMMY_REG_REG0                     0
    #define   LSb16smSysCtl_SM_DUMMY_REG_REG0                     0
    #define       bsmSysCtl_SM_DUMMY_REG_REG0                  32
    #define   MSK32smSysCtl_SM_DUMMY_REG_REG0                     0xFFFFFFFF
    ///////////////////////////////////////////////////////////
    #define     RA_smSysCtl_smPinMuxCntlBus                    0x0200

    #define     BA_smSysCtl_smPinMuxCntlBus_SM_TMS             0x0200
    #define     B16smSysCtl_smPinMuxCntlBus_SM_TMS             0x0200
    #define   LSb32smSysCtl_smPinMuxCntlBus_SM_TMS                0
    #define   LSb16smSysCtl_smPinMuxCntlBus_SM_TMS                0
    #define       bsmSysCtl_smPinMuxCntlBus_SM_TMS             3
    #define   MSK32smSysCtl_smPinMuxCntlBus_SM_TMS                0x00000007
    #define        smSysCtl_smPinMuxCntlBus_SM_TMS_MODE_0                   0x0
    #define        smSysCtl_smPinMuxCntlBus_SM_TMS_MODE_1                   0x1
    #define        smSysCtl_smPinMuxCntlBus_SM_TMS_MODE_3                   0x3
    #define        smSysCtl_smPinMuxCntlBus_SM_TMS_MODE_4                   0x4
    #define        smSysCtl_smPinMuxCntlBus_SM_TMS_MODE_5                   0x5
    #define        smSysCtl_smPinMuxCntlBus_SM_TMS_MODE_6                   0x6

    #define     BA_smSysCtl_smPinMuxCntlBus_SM_TDI             0x0200
    #define     B16smSysCtl_smPinMuxCntlBus_SM_TDI             0x0200
    #define   LSb32smSysCtl_smPinMuxCntlBus_SM_TDI                3
    #define   LSb16smSysCtl_smPinMuxCntlBus_SM_TDI                3
    #define       bsmSysCtl_smPinMuxCntlBus_SM_TDI             3
    #define   MSK32smSysCtl_smPinMuxCntlBus_SM_TDI                0x00000038
    #define        smSysCtl_smPinMuxCntlBus_SM_TDI_MODE_0                   0x0
    #define        smSysCtl_smPinMuxCntlBus_SM_TDI_MODE_1                   0x1
    #define        smSysCtl_smPinMuxCntlBus_SM_TDI_MODE_3                   0x3
    #define        smSysCtl_smPinMuxCntlBus_SM_TDI_MODE_4                   0x4
    #define        smSysCtl_smPinMuxCntlBus_SM_TDI_MODE_5                   0x5
    #define        smSysCtl_smPinMuxCntlBus_SM_TDI_MODE_6                   0x6

    #define     BA_smSysCtl_smPinMuxCntlBus_SM_TDO             0x0200
    #define     B16smSysCtl_smPinMuxCntlBus_SM_TDO             0x0200
    #define   LSb32smSysCtl_smPinMuxCntlBus_SM_TDO                6
    #define   LSb16smSysCtl_smPinMuxCntlBus_SM_TDO                6
    #define       bsmSysCtl_smPinMuxCntlBus_SM_TDO             3
    #define   MSK32smSysCtl_smPinMuxCntlBus_SM_TDO                0x000001C0
    #define        smSysCtl_smPinMuxCntlBus_SM_TDO_MODE_0                   0x0
    #define        smSysCtl_smPinMuxCntlBus_SM_TDO_MODE_1                   0x1
    #define        smSysCtl_smPinMuxCntlBus_SM_TDO_MODE_2                   0x2
    #define        smSysCtl_smPinMuxCntlBus_SM_TDO_MODE_5                   0x5
    #define        smSysCtl_smPinMuxCntlBus_SM_TDO_MODE_6                   0x6
    ///////////////////////////////////////////////////////////

    typedef struct SIE_smSysCtl {
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_ID_REV_ID(r32)                  _BFGET_(r32, 3, 0)
    #define   SET32smSysCtl_SM_ID_REV_ID(r32,v)                _BFSET_(r32, 3, 0,v)
    #define   GET16smSysCtl_SM_ID_REV_ID(r16)                  _BFGET_(r16, 3, 0)
    #define   SET16smSysCtl_SM_ID_REV_ID(r16,v)                _BFSET_(r16, 3, 0,v)

    #define   GET32smSysCtl_SM_ID_PART_ID(r32)                 _BFGET_(r32,19, 4)
    #define   SET32smSysCtl_SM_ID_PART_ID(r32,v)               _BFSET_(r32,19, 4,v)

    #define   GET32smSysCtl_SM_ID_MFC_ID(r32)                  _BFGET_(r32,31,20)
    #define   SET32smSysCtl_SM_ID_MFC_ID(r32,v)                _BFSET_(r32,31,20,v)
    #define   GET16smSysCtl_SM_ID_MFC_ID(r16)                  _BFGET_(r16,15, 4)
    #define   SET16smSysCtl_SM_ID_MFC_ID(r16,v)                _BFSET_(r16,15, 4,v)

    #define     w32smSysCtl_SM_ID                              {\
            UNSG32 uSM_ID_REV_ID                               :  4;\
            UNSG32 uSM_ID_PART_ID                              : 16;\
            UNSG32 uSM_ID_MFC_ID                               : 12;\
          }
    union { UNSG32 u32smSysCtl_SM_ID;
            struct w32smSysCtl_SM_ID;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_CPU_CTRL_CPU_RST_GO(r32)        _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_CPU_CTRL_CPU_RST_GO(r32,v)      _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_CPU_CTRL_CPU_RST_GO(r16)        _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_CPU_CTRL_CPU_RST_GO(r16,v)      _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_CPU_CTRL_CPU_VINITHI(r32)       _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_CPU_CTRL_CPU_VINITHI(r32,v)     _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_CPU_CTRL_CPU_VINITHI(r16)       _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_CPU_CTRL_CPU_VINITHI(r16,v)     _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_CPU_CTRL_CPU_INITRAM(r32)       _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_CPU_CTRL_CPU_INITRAM(r32,v)     _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_CPU_CTRL_CPU_INITRAM(r16)       _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_CPU_CTRL_CPU_INITRAM(r16,v)     _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_CPU_CTRL_CPU_BIGEND(r32)        _BFGET_(r32, 3, 3)
    #define   SET32smSysCtl_SM_CPU_CTRL_CPU_BIGEND(r32,v)      _BFSET_(r32, 3, 3,v)
    #define   GET16smSysCtl_SM_CPU_CTRL_CPU_BIGEND(r16)        _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_SM_CPU_CTRL_CPU_BIGEND(r16,v)      _BFSET_(r16, 3, 3,v)

    #define     w32smSysCtl_SM_CPU_CTRL                        {\
            UNSG32 uSM_CPU_CTRL_CPU_RST_GO                     :  1;\
            UNSG32 uSM_CPU_CTRL_CPU_VINITHI                    :  1;\
            UNSG32 uSM_CPU_CTRL_CPU_INITRAM                    :  1;\
            UNSG32 uSM_CPU_CTRL_CPU_BIGEND                     :  1;\
            UNSG32 RSVDx4_b4                                   : 28;\
          }
    union { UNSG32 u32smSysCtl_SM_CPU_CTRL;
            struct w32smSysCtl_SM_CPU_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_RST_CTRL_SOC_RST_GO(r32)        _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_RST_CTRL_SOC_RST_GO(r32,v)      _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_RST_CTRL_SOC_RST_GO(r16)        _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_RST_CTRL_SOC_RST_GO(r16,v)      _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_RST_CTRL_APB_RST_GO(r32)        _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_RST_CTRL_APB_RST_GO(r32,v)      _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_RST_CTRL_APB_RST_GO(r16)        _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_RST_CTRL_APB_RST_GO(r16,v)      _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_RST_CTRL_SXBAR_RST_GO(r32)      _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_RST_CTRL_SXBAR_RST_GO(r32,v)    _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_RST_CTRL_SXBAR_RST_GO(r16)      _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_RST_CTRL_SXBAR_RST_GO(r16,v)    _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_RST_CTRL_WOL_RST_GO(r32)        _BFGET_(r32, 3, 3)
    #define   SET32smSysCtl_SM_RST_CTRL_WOL_RST_GO(r32,v)      _BFSET_(r32, 3, 3,v)
    #define   GET16smSysCtl_SM_RST_CTRL_WOL_RST_GO(r16)        _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_SM_RST_CTRL_WOL_RST_GO(r16,v)      _BFSET_(r16, 3, 3,v)

    #define   GET32smSysCtl_SM_RST_CTRL_FEPHY_RST_GO(r32)      _BFGET_(r32, 4, 4)
    #define   SET32smSysCtl_SM_RST_CTRL_FEPHY_RST_GO(r32,v)    _BFSET_(r32, 4, 4,v)
    #define   GET16smSysCtl_SM_RST_CTRL_FEPHY_RST_GO(r16)      _BFGET_(r16, 4, 4)
    #define   SET16smSysCtl_SM_RST_CTRL_FEPHY_RST_GO(r16,v)    _BFSET_(r16, 4, 4,v)

    #define     w32smSysCtl_SM_RST_CTRL                        {\
            UNSG32 uSM_RST_CTRL_SOC_RST_GO                     :  1;\
            UNSG32 uSM_RST_CTRL_APB_RST_GO                     :  1;\
            UNSG32 uSM_RST_CTRL_SXBAR_RST_GO                   :  1;\
            UNSG32 uSM_RST_CTRL_WOL_RST_GO                     :  1;\
            UNSG32 uSM_RST_CTRL_FEPHY_RST_GO                   :  1;\
            UNSG32 RSVDx8_b5                                   : 27;\
          }
    union { UNSG32 u32smSysCtl_SM_RST_CTRL;
            struct w32smSysCtl_SM_RST_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_RST_STATUS_RST_WD_0(r32)        _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_RST_STATUS_RST_WD_0(r32,v)      _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_RST_STATUS_RST_WD_0(r16)        _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_RST_STATUS_RST_WD_0(r16,v)      _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_RST_STATUS_RST_WD_1(r32)        _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_RST_STATUS_RST_WD_1(r32,v)      _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_RST_STATUS_RST_WD_1(r16)        _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_RST_STATUS_RST_WD_1(r16,v)      _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_RST_STATUS_RST_WD_2(r32)        _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_RST_STATUS_RST_WD_2(r32,v)      _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_RST_STATUS_RST_WD_2(r16)        _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_RST_STATUS_RST_WD_2(r16,v)      _BFSET_(r16, 2, 2,v)

    #define     w32smSysCtl_SM_RST_STATUS                      {\
            UNSG32 uSM_RST_STATUS_RST_WD_0                     :  1;\
            UNSG32 uSM_RST_STATUS_RST_WD_1                     :  1;\
            UNSG32 uSM_RST_STATUS_RST_WD_2                     :  1;\
            UNSG32 RSVDxC_b3                                   : 29;\
          }
    union { UNSG32 u32smSysCtl_SM_RST_STATUS;
            struct w32smSysCtl_SM_RST_STATUS;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_STRP_STATUS_BOOT_MODE(r32)      _BFGET_(r32, 1, 0)
    #define   SET32smSysCtl_SM_STRP_STATUS_BOOT_MODE(r32,v)    _BFSET_(r32, 1, 0,v)
    #define   GET16smSysCtl_SM_STRP_STATUS_BOOT_MODE(r16)      _BFGET_(r16, 1, 0)
    #define   SET16smSysCtl_SM_STRP_STATUS_BOOT_MODE(r16,v)    _BFSET_(r16, 1, 0,v)

    #define   GET32smSysCtl_SM_STRP_STATUS_STRP_2(r32)         _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_STRP_STATUS_STRP_2(r32,v)       _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_STRP_STATUS_STRP_2(r16)         _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_STRP_STATUS_STRP_2(r16,v)       _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_STRP_STATUS_STRP_3(r32)         _BFGET_(r32, 3, 3)
    #define   SET32smSysCtl_SM_STRP_STATUS_STRP_3(r32,v)       _BFSET_(r32, 3, 3,v)
    #define   GET16smSysCtl_SM_STRP_STATUS_STRP_3(r16)         _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_SM_STRP_STATUS_STRP_3(r16,v)       _BFSET_(r16, 3, 3,v)

    #define     w32smSysCtl_SM_STRP_STATUS                     {\
            UNSG32 uSM_STRP_STATUS_BOOT_MODE                   :  2;\
            UNSG32 uSM_STRP_STATUS_STRP_2                      :  1;\
            UNSG32 uSM_STRP_STATUS_STRP_3                      :  1;\
            UNSG32 RSVDx10_b4                                  : 28;\
          }
    union { UNSG32 u32smSysCtl_SM_STRP_STATUS;
            struct w32smSysCtl_SM_STRP_STATUS;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_CTRL_ISO_EN(r32)                _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_CTRL_ISO_EN(r32,v)              _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_CTRL_ISO_EN(r16)                _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_CTRL_ISO_EN(r16,v)              _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_CTRL_SM2SOC_SW_INTR(r32)        _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_CTRL_SM2SOC_SW_INTR(r32,v)      _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_CTRL_SM2SOC_SW_INTR(r16)        _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_CTRL_SM2SOC_SW_INTR(r16,v)      _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_CTRL_SOC2SM_SW_INTR(r32)        _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_CTRL_SOC2SM_SW_INTR(r32,v)      _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_CTRL_SOC2SM_SW_INTR(r16)        _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_CTRL_SOC2SM_SW_INTR(r16,v)      _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_CTRL_REV_0(r32)                 _BFGET_(r32, 4, 3)
    #define   SET32smSysCtl_SM_CTRL_REV_0(r32,v)               _BFSET_(r32, 4, 3,v)
    #define   GET16smSysCtl_SM_CTRL_REV_0(r16)                 _BFGET_(r16, 4, 3)
    #define   SET16smSysCtl_SM_CTRL_REV_0(r16,v)               _BFSET_(r16, 4, 3,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_SEL(r32)               _BFGET_(r32, 8, 5)
    #define   SET32smSysCtl_SM_CTRL_ADC_SEL(r32,v)             _BFSET_(r32, 8, 5,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_SEL(r16)               _BFGET_(r16, 8, 5)
    #define   SET16smSysCtl_SM_CTRL_ADC_SEL(r16,v)             _BFSET_(r16, 8, 5,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_PU(r32)                _BFGET_(r32, 9, 9)
    #define   SET32smSysCtl_SM_CTRL_ADC_PU(r32,v)              _BFSET_(r32, 9, 9,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_PU(r16)                _BFGET_(r16, 9, 9)
    #define   SET16smSysCtl_SM_CTRL_ADC_PU(r16,v)              _BFSET_(r16, 9, 9,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_CKSEL(r32)             _BFGET_(r32,11,10)
    #define   SET32smSysCtl_SM_CTRL_ADC_CKSEL(r32,v)           _BFSET_(r32,11,10,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_CKSEL(r16)             _BFGET_(r16,11,10)
    #define   SET16smSysCtl_SM_CTRL_ADC_CKSEL(r16,v)           _BFSET_(r16,11,10,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_START(r32)             _BFGET_(r32,12,12)
    #define   SET32smSysCtl_SM_CTRL_ADC_START(r32,v)           _BFSET_(r32,12,12,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_START(r16)             _BFGET_(r16,12,12)
    #define   SET16smSysCtl_SM_CTRL_ADC_START(r16,v)           _BFSET_(r16,12,12,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_RESET(r32)             _BFGET_(r32,13,13)
    #define   SET32smSysCtl_SM_CTRL_ADC_RESET(r32,v)           _BFSET_(r32,13,13,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_RESET(r16)             _BFGET_(r16,13,13)
    #define   SET16smSysCtl_SM_CTRL_ADC_RESET(r16,v)           _BFSET_(r16,13,13,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_BG_RDY(r32)            _BFGET_(r32,14,14)
    #define   SET32smSysCtl_SM_CTRL_ADC_BG_RDY(r32,v)          _BFSET_(r32,14,14,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_BG_RDY(r16)            _BFGET_(r16,14,14)
    #define   SET16smSysCtl_SM_CTRL_ADC_BG_RDY(r16,v)          _BFSET_(r16,14,14,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_CONT(r32)              _BFGET_(r32,15,15)
    #define   SET32smSysCtl_SM_CTRL_ADC_CONT(r32,v)            _BFSET_(r32,15,15,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_CONT(r16)              _BFGET_(r16,15,15)
    #define   SET16smSysCtl_SM_CTRL_ADC_CONT(r16,v)            _BFSET_(r16,15,15,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_BUF_EN(r32)            _BFGET_(r32,16,16)
    #define   SET32smSysCtl_SM_CTRL_ADC_BUF_EN(r32,v)          _BFSET_(r32,16,16,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_BUF_EN(r16)            _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_CTRL_ADC_BUF_EN(r16,v)          _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_VREF_SEL(r32)          _BFGET_(r32,17,17)
    #define   SET32smSysCtl_SM_CTRL_ADC_VREF_SEL(r32,v)        _BFSET_(r32,17,17,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_VREF_SEL(r16)          _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_CTRL_ADC_VREF_SEL(r16,v)        _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_CTRL_ADC_ROTATE_SEL(r32)        _BFGET_(r32,18,18)
    #define   SET32smSysCtl_SM_CTRL_ADC_ROTATE_SEL(r32,v)      _BFSET_(r32,18,18,v)
    #define   GET16smSysCtl_SM_CTRL_ADC_ROTATE_SEL(r16)        _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_CTRL_ADC_ROTATE_SEL(r16,v)      _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_CTRL_TSEN_EN(r32)               _BFGET_(r32,19,19)
    #define   SET32smSysCtl_SM_CTRL_TSEN_EN(r32,v)             _BFSET_(r32,19,19,v)
    #define   GET16smSysCtl_SM_CTRL_TSEN_EN(r16)               _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_SM_CTRL_TSEN_EN(r16,v)             _BFSET_(r16, 3, 3,v)

    #define   GET32smSysCtl_SM_CTRL_TSEN_CLK_SEL(r32)          _BFGET_(r32,20,20)
    #define   SET32smSysCtl_SM_CTRL_TSEN_CLK_SEL(r32,v)        _BFSET_(r32,20,20,v)
    #define   GET16smSysCtl_SM_CTRL_TSEN_CLK_SEL(r16)          _BFGET_(r16, 4, 4)
    #define   SET16smSysCtl_SM_CTRL_TSEN_CLK_SEL(r16,v)        _BFSET_(r16, 4, 4,v)

    #define   GET32smSysCtl_SM_CTRL_TSEN_MODE_SEL(r32)         _BFGET_(r32,21,21)
    #define   SET32smSysCtl_SM_CTRL_TSEN_MODE_SEL(r32,v)       _BFSET_(r32,21,21,v)
    #define   GET16smSysCtl_SM_CTRL_TSEN_MODE_SEL(r16)         _BFGET_(r16, 5, 5)
    #define   SET16smSysCtl_SM_CTRL_TSEN_MODE_SEL(r16,v)       _BFSET_(r16, 5, 5,v)

    #define   GET32smSysCtl_SM_CTRL_TSEN_ADC_CAL(r32)          _BFGET_(r32,23,22)
    #define   SET32smSysCtl_SM_CTRL_TSEN_ADC_CAL(r32,v)        _BFSET_(r32,23,22,v)
    #define   GET16smSysCtl_SM_CTRL_TSEN_ADC_CAL(r16)          _BFGET_(r16, 7, 6)
    #define   SET16smSysCtl_SM_CTRL_TSEN_ADC_CAL(r16,v)        _BFSET_(r16, 7, 6,v)

    #define   GET32smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL(r32)      _BFGET_(r32,28,24)
    #define   SET32smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL(r32,v)    _BFSET_(r32,28,24,v)
    #define   GET16smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL(r16)      _BFGET_(r16,12, 8)
    #define   SET16smSysCtl_SM_CTRL_TSEN_ADC_TST_SEL(r16,v)    _BFSET_(r16,12, 8,v)

    #define   GET32smSysCtl_SM_CTRL_TSEN_RESET(r32)            _BFGET_(r32,29,29)
    #define   SET32smSysCtl_SM_CTRL_TSEN_RESET(r32,v)          _BFSET_(r32,29,29,v)
    #define   GET16smSysCtl_SM_CTRL_TSEN_RESET(r16)            _BFGET_(r16,13,13)
    #define   SET16smSysCtl_SM_CTRL_TSEN_RESET(r16,v)          _BFSET_(r16,13,13,v)

    #define   GET32smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN(r32)       _BFGET_(r32,30,30)
    #define   SET32smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN(r32,v)     _BFSET_(r32,30,30,v)
    #define   GET16smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN(r16)       _BFGET_(r16,14,14)
    #define   SET16smSysCtl_SM_CTRL_TSEN_ADC_ISO_EN(r16,v)     _BFSET_(r16,14,14,v)

    #define     w32smSysCtl_SM_CTRL                            {\
            UNSG32 uSM_CTRL_ISO_EN                             :  1;\
            UNSG32 uSM_CTRL_SM2SOC_SW_INTR                     :  1;\
            UNSG32 uSM_CTRL_SOC2SM_SW_INTR                     :  1;\
            UNSG32 uSM_CTRL_REV_0                              :  2;\
            UNSG32 uSM_CTRL_ADC_SEL                            :  4;\
            UNSG32 uSM_CTRL_ADC_PU                             :  1;\
            UNSG32 uSM_CTRL_ADC_CKSEL                          :  2;\
            UNSG32 uSM_CTRL_ADC_START                          :  1;\
            UNSG32 uSM_CTRL_ADC_RESET                          :  1;\
            UNSG32 uSM_CTRL_ADC_BG_RDY                         :  1;\
            UNSG32 uSM_CTRL_ADC_CONT                           :  1;\
            UNSG32 uSM_CTRL_ADC_BUF_EN                         :  1;\
            UNSG32 uSM_CTRL_ADC_VREF_SEL                       :  1;\
            UNSG32 uSM_CTRL_ADC_ROTATE_SEL                     :  1;\
            UNSG32 uSM_CTRL_TSEN_EN                            :  1;\
            UNSG32 uSM_CTRL_TSEN_CLK_SEL                       :  1;\
            UNSG32 uSM_CTRL_TSEN_MODE_SEL                      :  1;\
            UNSG32 uSM_CTRL_TSEN_ADC_CAL                       :  2;\
            UNSG32 uSM_CTRL_TSEN_ADC_TST_SEL                   :  5;\
            UNSG32 uSM_CTRL_TSEN_RESET                         :  1;\
            UNSG32 uSM_CTRL_TSEN_ADC_ISO_EN                    :  1;\
            UNSG32 RSVDx14_b31                                 :  1;\
          }
    union { UNSG32 u32smSysCtl_SM_CTRL;
            struct w32smSysCtl_SM_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT(r32)       _BFGET_(r32, 4, 0)
    #define   SET32smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT(r32,v)     _BFSET_(r32, 4, 0,v)
    #define   GET16smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT(r16)       _BFGET_(r16, 4, 0)
    #define   SET16smSysCtl_SM_ADC_CTRL_TSEN_DAT_LT(r16,v)     _BFSET_(r16, 4, 0,v)

    #define   GET32smSysCtl_SM_ADC_CTRL_ADC_DAT_LT(r32)        _BFGET_(r32, 9, 5)
    #define   SET32smSysCtl_SM_ADC_CTRL_ADC_DAT_LT(r32,v)      _BFSET_(r32, 9, 5,v)
    #define   GET16smSysCtl_SM_ADC_CTRL_ADC_DAT_LT(r16)        _BFGET_(r16, 9, 5)
    #define   SET16smSysCtl_SM_ADC_CTRL_ADC_DAT_LT(r16,v)      _BFSET_(r16, 9, 5,v)

    #define     w32smSysCtl_SM_ADC_CTRL                        {\
            UNSG32 uSM_ADC_CTRL_TSEN_DAT_LT                    :  5;\
            UNSG32 uSM_ADC_CTRL_ADC_DAT_LT                     :  5;\
            UNSG32 RSVDx18_b10                                 : 22;\
          }
    union { UNSG32 u32smSysCtl_SM_ADC_CTRL;
            struct w32smSysCtl_SM_ADC_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY(r32)    _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY(r32,v)  _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY(r16)    _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH0_DATA_RDY(r16,v)  _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY(r32)    _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY(r32,v)  _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY(r16)    _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH1_DATA_RDY(r16,v)  _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY(r32)    _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY(r32,v)  _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY(r16)    _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH2_DATA_RDY(r16,v)  _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY(r32)    _BFGET_(r32, 3, 3)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY(r32,v)  _BFSET_(r32, 3, 3,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY(r16)    _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH3_DATA_RDY(r16,v)  _BFSET_(r16, 3, 3,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY(r32)    _BFGET_(r32, 4, 4)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY(r32,v)  _BFSET_(r32, 4, 4,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY(r16)    _BFGET_(r16, 4, 4)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH4_DATA_RDY(r16,v)  _BFSET_(r16, 4, 4,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY(r32)    _BFGET_(r32, 5, 5)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY(r32,v)  _BFSET_(r32, 5, 5,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY(r16)    _BFGET_(r16, 5, 5)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH5_DATA_RDY(r16,v)  _BFSET_(r16, 5, 5,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY(r32)    _BFGET_(r32, 6, 6)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY(r32,v)  _BFSET_(r32, 6, 6,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY(r16)    _BFGET_(r16, 6, 6)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH6_DATA_RDY(r16,v)  _BFSET_(r16, 6, 6,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY(r32)    _BFGET_(r32, 7, 7)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY(r32,v)  _BFSET_(r32, 7, 7,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY(r16)    _BFGET_(r16, 7, 7)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH7_DATA_RDY(r16,v)  _BFSET_(r16, 7, 7,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY(r32)    _BFGET_(r32, 8, 8)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY(r32,v)  _BFSET_(r32, 8, 8,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY(r16)    _BFGET_(r16, 8, 8)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH8_DATA_RDY(r16,v)  _BFSET_(r16, 8, 8,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY(r32)    _BFGET_(r32, 9, 9)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY(r32,v)  _BFSET_(r32, 9, 9,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY(r16)    _BFGET_(r16, 9, 9)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH9_DATA_RDY(r16,v)  _BFSET_(r16, 9, 9,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY(r32)   _BFGET_(r32,10,10)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY(r32,v) _BFSET_(r32,10,10,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY(r16)   _BFGET_(r16,10,10)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH10_DATA_RDY(r16,v) _BFSET_(r16,10,10,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY(r32)   _BFGET_(r32,11,11)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY(r32,v) _BFSET_(r32,11,11,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY(r16)   _BFGET_(r16,11,11)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH11_DATA_RDY(r16,v) _BFSET_(r16,11,11,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY(r32)   _BFGET_(r32,12,12)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY(r32,v) _BFSET_(r32,12,12,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY(r16)   _BFGET_(r16,12,12)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH12_DATA_RDY(r16,v) _BFSET_(r16,12,12,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY(r32)   _BFGET_(r32,13,13)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY(r32,v) _BFSET_(r32,13,13,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY(r16)   _BFGET_(r16,13,13)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH13_DATA_RDY(r16,v) _BFSET_(r16,13,13,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY(r32)   _BFGET_(r32,14,14)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY(r32,v) _BFSET_(r32,14,14,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY(r16)   _BFGET_(r16,14,14)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH14_DATA_RDY(r16,v) _BFSET_(r16,14,14,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY(r32)   _BFGET_(r32,15,15)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY(r32,v) _BFSET_(r32,15,15,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY(r16)   _BFGET_(r16,15,15)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH15_DATA_RDY(r16,v) _BFSET_(r16,15,15,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH0_INT_EN(r32)      _BFGET_(r32,16,16)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH0_INT_EN(r32,v)    _BFSET_(r32,16,16,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH0_INT_EN(r16)      _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH0_INT_EN(r16,v)    _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH1_INT_EN(r32)      _BFGET_(r32,17,17)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH1_INT_EN(r32,v)    _BFSET_(r32,17,17,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH1_INT_EN(r16)      _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH1_INT_EN(r16,v)    _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH2_INT_EN(r32)      _BFGET_(r32,18,18)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH2_INT_EN(r32,v)    _BFSET_(r32,18,18,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH2_INT_EN(r16)      _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH2_INT_EN(r16,v)    _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH3_INT_EN(r32)      _BFGET_(r32,19,19)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH3_INT_EN(r32,v)    _BFSET_(r32,19,19,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH3_INT_EN(r16)      _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH3_INT_EN(r16,v)    _BFSET_(r16, 3, 3,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH4_INT_EN(r32)      _BFGET_(r32,20,20)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH4_INT_EN(r32,v)    _BFSET_(r32,20,20,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH4_INT_EN(r16)      _BFGET_(r16, 4, 4)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH4_INT_EN(r16,v)    _BFSET_(r16, 4, 4,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH5_INT_EN(r32)      _BFGET_(r32,21,21)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH5_INT_EN(r32,v)    _BFSET_(r32,21,21,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH5_INT_EN(r16)      _BFGET_(r16, 5, 5)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH5_INT_EN(r16,v)    _BFSET_(r16, 5, 5,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH6_INT_EN(r32)      _BFGET_(r32,22,22)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH6_INT_EN(r32,v)    _BFSET_(r32,22,22,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH6_INT_EN(r16)      _BFGET_(r16, 6, 6)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH6_INT_EN(r16,v)    _BFSET_(r16, 6, 6,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH7_INT_EN(r32)      _BFGET_(r32,23,23)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH7_INT_EN(r32,v)    _BFSET_(r32,23,23,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH7_INT_EN(r16)      _BFGET_(r16, 7, 7)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH7_INT_EN(r16,v)    _BFSET_(r16, 7, 7,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH8_INT_EN(r32)      _BFGET_(r32,24,24)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH8_INT_EN(r32,v)    _BFSET_(r32,24,24,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH8_INT_EN(r16)      _BFGET_(r16, 8, 8)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH8_INT_EN(r16,v)    _BFSET_(r16, 8, 8,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH9_INT_EN(r32)      _BFGET_(r32,25,25)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH9_INT_EN(r32,v)    _BFSET_(r32,25,25,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH9_INT_EN(r16)      _BFGET_(r16, 9, 9)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH9_INT_EN(r16,v)    _BFSET_(r16, 9, 9,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH10_INT_EN(r32)     _BFGET_(r32,26,26)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH10_INT_EN(r32,v)   _BFSET_(r32,26,26,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH10_INT_EN(r16)     _BFGET_(r16,10,10)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH10_INT_EN(r16,v)   _BFSET_(r16,10,10,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH11_INT_EN(r32)     _BFGET_(r32,27,27)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH11_INT_EN(r32,v)   _BFSET_(r32,27,27,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH11_INT_EN(r16)     _BFGET_(r16,11,11)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH11_INT_EN(r16,v)   _BFSET_(r16,11,11,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH12_INT_EN(r32)     _BFGET_(r32,28,28)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH12_INT_EN(r32,v)   _BFSET_(r32,28,28,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH12_INT_EN(r16)     _BFGET_(r16,12,12)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH12_INT_EN(r16,v)   _BFSET_(r16,12,12,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH13_INT_EN(r32)     _BFGET_(r32,29,29)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH13_INT_EN(r32,v)   _BFSET_(r32,29,29,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH13_INT_EN(r16)     _BFGET_(r16,13,13)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH13_INT_EN(r16,v)   _BFSET_(r16,13,13,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH14_INT_EN(r32)     _BFGET_(r32,30,30)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH14_INT_EN(r32,v)   _BFSET_(r32,30,30,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH14_INT_EN(r16)     _BFGET_(r16,14,14)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH14_INT_EN(r16,v)   _BFSET_(r16,14,14,v)

    #define   GET32smSysCtl_SM_ADC_STATUS_CH15_INT_EN(r32)     _BFGET_(r32,31,31)
    #define   SET32smSysCtl_SM_ADC_STATUS_CH15_INT_EN(r32,v)   _BFSET_(r32,31,31,v)
    #define   GET16smSysCtl_SM_ADC_STATUS_CH15_INT_EN(r16)     _BFGET_(r16,15,15)
    #define   SET16smSysCtl_SM_ADC_STATUS_CH15_INT_EN(r16,v)   _BFSET_(r16,15,15,v)

    #define     w32smSysCtl_SM_ADC_STATUS                      {\
            UNSG32 uSM_ADC_STATUS_CH0_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH1_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH2_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH3_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH4_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH5_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH6_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH7_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH8_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH9_DATA_RDY                 :  1;\
            UNSG32 uSM_ADC_STATUS_CH10_DATA_RDY                :  1;\
            UNSG32 uSM_ADC_STATUS_CH11_DATA_RDY                :  1;\
            UNSG32 uSM_ADC_STATUS_CH12_DATA_RDY                :  1;\
            UNSG32 uSM_ADC_STATUS_CH13_DATA_RDY                :  1;\
            UNSG32 uSM_ADC_STATUS_CH14_DATA_RDY                :  1;\
            UNSG32 uSM_ADC_STATUS_CH15_DATA_RDY                :  1;\
            UNSG32 uSM_ADC_STATUS_CH0_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH1_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH2_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH3_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH4_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH5_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH6_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH7_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH8_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH9_INT_EN                   :  1;\
            UNSG32 uSM_ADC_STATUS_CH10_INT_EN                  :  1;\
            UNSG32 uSM_ADC_STATUS_CH11_INT_EN                  :  1;\
            UNSG32 uSM_ADC_STATUS_CH12_INT_EN                  :  1;\
            UNSG32 uSM_ADC_STATUS_CH13_INT_EN                  :  1;\
            UNSG32 uSM_ADC_STATUS_CH14_INT_EN                  :  1;\
            UNSG32 uSM_ADC_STATUS_CH15_INT_EN                  :  1;\
          }
    union { UNSG32 u32smSysCtl_SM_ADC_STATUS;
            struct w32smSysCtl_SM_ADC_STATUS;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_ADC_DATA_ADC_DATA(r32)          _BFGET_(r32, 9, 0)
    #define   SET32smSysCtl_SM_ADC_DATA_ADC_DATA(r32,v)        _BFSET_(r32, 9, 0,v)
    #define   GET16smSysCtl_SM_ADC_DATA_ADC_DATA(r16)          _BFGET_(r16, 9, 0)
    #define   SET16smSysCtl_SM_ADC_DATA_ADC_DATA(r16,v)        _BFSET_(r16, 9, 0,v)

    #define     w32smSysCtl_SM_ADC_DATA                        {\
            UNSG32 uSM_ADC_DATA_ADC_DATA                       : 10;\
            UNSG32 RSVDx20_b10                                 : 22;\
          }
    union { UNSG32 u32smSysCtl_SM_ADC_DATA;
            struct w32smSysCtl_SM_ADC_DATA;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_ADC_STATUS_DATA_RDY(r32)      _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_TSEN_ADC_STATUS_DATA_RDY(r32,v)    _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_TSEN_ADC_STATUS_DATA_RDY(r16)      _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_TSEN_ADC_STATUS_DATA_RDY(r16,v)    _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_TSEN_ADC_STATUS_INT_EN(r32)        _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_TSEN_ADC_STATUS_INT_EN(r32,v)      _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_TSEN_ADC_STATUS_INT_EN(r16)        _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_TSEN_ADC_STATUS_INT_EN(r16,v)      _BFSET_(r16, 1, 1,v)

    #define     w32smSysCtl_TSEN_ADC_STATUS                    {\
            UNSG32 uTSEN_ADC_STATUS_DATA_RDY                   :  1;\
            UNSG32 uTSEN_ADC_STATUS_INT_EN                     :  1;\
            UNSG32 RSVDx24_b2                                  : 30;\
          }
    union { UNSG32 u32smSysCtl_TSEN_ADC_STATUS;
            struct w32smSysCtl_TSEN_ADC_STATUS;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_ADC_DATA_ADC_DATA(r32)        _BFGET_(r32,11, 0)
    #define   SET32smSysCtl_TSEN_ADC_DATA_ADC_DATA(r32,v)      _BFSET_(r32,11, 0,v)
    #define   GET16smSysCtl_TSEN_ADC_DATA_ADC_DATA(r16)        _BFGET_(r16,11, 0)
    #define   SET16smSysCtl_TSEN_ADC_DATA_ADC_DATA(r16,v)      _BFSET_(r16,11, 0,v)

    #define     w32smSysCtl_TSEN_ADC_DATA                      {\
            UNSG32 uTSEN_ADC_DATA_ADC_DATA                     : 12;\
            UNSG32 RSVDx28_b12                                 : 20;\
          }
    union { UNSG32 u32smSysCtl_TSEN_ADC_DATA;
            struct w32smSysCtl_TSEN_ADC_DATA;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX(r32)   _BFGET_(r32,11, 0)
    #define   SET32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX(r32,v) _BFSET_(r32,11, 0,v)
    #define   GET16smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX(r16)   _BFGET_(r16,11, 0)
    #define   SET16smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MAX(r16,v) _BFSET_(r16,11, 0,v)

    #define   GET32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN(r32)   _BFGET_(r32,23,12)
    #define   SET32smSysCtl_TSEN_CHK_CTRL_TSEN_DATA_MIN(r32,v) _BFSET_(r32,23,12,v)

    #define   GET32smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL(r32) _BFGET_(r32,24,24)
    #define   SET32smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL(r32,v) _BFSET_(r32,24,24,v)
    #define   GET16smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL(r16) _BFGET_(r16, 8, 8)
    #define   SET16smSysCtl_TSEN_CHK_CTRL_TSEN_OVERHEAT_SEL(r16,v) _BFSET_(r16, 8, 8,v)

    #define     w32smSysCtl_TSEN_CHK_CTRL                      {\
            UNSG32 uTSEN_CHK_CTRL_TSEN_DATA_MAX                : 12;\
            UNSG32 uTSEN_CHK_CTRL_TSEN_DATA_MIN                : 12;\
            UNSG32 uTSEN_CHK_CTRL_TSEN_OVERHEAT_SEL            :  1;\
            UNSG32 RSVDx2C_b25                                 :  7;\
          }
    union { UNSG32 u32smSysCtl_TSEN_CHK_CTRL;
            struct w32smSysCtl_TSEN_CHK_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL(r32) _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL(r32,v) _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL(r16) _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_TSEN_DATA_STATUS_TSEN_MAX_FAIL(r16,v) _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL(r32) _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL(r32,v) _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL(r16) _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_TSEN_DATA_STATUS_TSEN_MIN_FAIL(r16,v) _BFSET_(r16, 1, 1,v)

    #define     w32smSysCtl_TSEN_DATA_STATUS                   {\
            UNSG32 uTSEN_DATA_STATUS_TSEN_MAX_FAIL             :  1;\
            UNSG32 uTSEN_DATA_STATUS_TSEN_MIN_FAIL             :  1;\
            UNSG32 RSVDx30_b2                                  : 30;\
          }
    union { UNSG32 u32smSysCtl_TSEN_DATA_STATUS;
            struct w32smSysCtl_TSEN_DATA_STATUS;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_BOOT_STATUS_MODE(r32)           _BFGET_(r32,31, 0)
    #define   SET32smSysCtl_SM_BOOT_STATUS_MODE(r32,v)         _BFSET_(r32,31, 0,v)

    #define     w32smSysCtl_SM_BOOT_STATUS                     {\
            UNSG32 uSM_BOOT_STATUS_MODE                        : 32;\
          }
    union { UNSG32 u32smSysCtl_SM_BOOT_STATUS;
            struct w32smSysCtl_SM_BOOT_STATUS;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_LDO_CTRL_TEST_SEL(r32)          _BFGET_(r32, 2, 0)
    #define   SET32smSysCtl_SM_LDO_CTRL_TEST_SEL(r32,v)        _BFSET_(r32, 2, 0,v)
    #define   GET16smSysCtl_SM_LDO_CTRL_TEST_SEL(r16)          _BFGET_(r16, 2, 0)
    #define   SET16smSysCtl_SM_LDO_CTRL_TEST_SEL(r16,v)        _BFSET_(r16, 2, 0,v)

    #define   GET32smSysCtl_SM_LDO_CTRL_VOUT_SEL(r32)          _BFGET_(r32, 5, 3)
    #define   SET32smSysCtl_SM_LDO_CTRL_VOUT_SEL(r32,v)        _BFSET_(r32, 5, 3,v)
    #define   GET16smSysCtl_SM_LDO_CTRL_VOUT_SEL(r16)          _BFGET_(r16, 5, 3)
    #define   SET16smSysCtl_SM_LDO_CTRL_VOUT_SEL(r16,v)        _BFSET_(r16, 5, 3,v)

    #define   GET32smSysCtl_SM_LDO_CTRL_TEST_EN(r32)           _BFGET_(r32, 6, 6)
    #define   SET32smSysCtl_SM_LDO_CTRL_TEST_EN(r32,v)         _BFSET_(r32, 6, 6,v)
    #define   GET16smSysCtl_SM_LDO_CTRL_TEST_EN(r16)           _BFGET_(r16, 6, 6)
    #define   SET16smSysCtl_SM_LDO_CTRL_TEST_EN(r16,v)         _BFSET_(r16, 6, 6,v)

    #define   GET32smSysCtl_SM_LDO_CTRL_LDO_RDY(r32)           _BFGET_(r32, 7, 7)
    #define   SET32smSysCtl_SM_LDO_CTRL_LDO_RDY(r32,v)         _BFSET_(r32, 7, 7,v)
    #define   GET16smSysCtl_SM_LDO_CTRL_LDO_RDY(r16)           _BFGET_(r16, 7, 7)
    #define   SET16smSysCtl_SM_LDO_CTRL_LDO_RDY(r16,v)         _BFSET_(r16, 7, 7,v)

    #define   GET32smSysCtl_SM_LDO_CTRL_CHP_EN_1P1(r32)        _BFGET_(r32, 8, 8)
    #define   SET32smSysCtl_SM_LDO_CTRL_CHP_EN_1P1(r32,v)      _BFSET_(r32, 8, 8,v)
    #define   GET16smSysCtl_SM_LDO_CTRL_CHP_EN_1P1(r16)        _BFGET_(r16, 8, 8)
    #define   SET16smSysCtl_SM_LDO_CTRL_CHP_EN_1P1(r16,v)      _BFSET_(r16, 8, 8,v)

    #define   GET32smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1(r32)     _BFGET_(r32, 9, 9)
    #define   SET32smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1(r32,v)   _BFSET_(r32, 9, 9,v)
    #define   GET16smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1(r16)     _BFGET_(r16, 9, 9)
    #define   SET16smSysCtl_SM_LDO_CTRL_ICLAMP_EN_1P1(r16,v)   _BFSET_(r16, 9, 9,v)

    #define     w32smSysCtl_SM_LDO_CTRL                        {\
            UNSG32 uSM_LDO_CTRL_TEST_SEL                       :  3;\
            UNSG32 uSM_LDO_CTRL_VOUT_SEL                       :  3;\
            UNSG32 uSM_LDO_CTRL_TEST_EN                        :  1;\
            UNSG32 uSM_LDO_CTRL_LDO_RDY                        :  1;\
            UNSG32 uSM_LDO_CTRL_CHP_EN_1P1                     :  1;\
            UNSG32 uSM_LDO_CTRL_ICLAMP_EN_1P1                  :  1;\
            UNSG32 RSVDx38_b10                                 : 22;\
          }
    union { UNSG32 u32smSysCtl_SM_LDO_CTRL;
            struct w32smSysCtl_SM_LDO_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_WDT_MASK_SM_RST(r32)            _BFGET_(r32, 2, 0)
    #define   SET32smSysCtl_SM_WDT_MASK_SM_RST(r32,v)          _BFSET_(r32, 2, 0,v)
    #define   GET16smSysCtl_SM_WDT_MASK_SM_RST(r16)            _BFGET_(r16, 2, 0)
    #define   SET16smSysCtl_SM_WDT_MASK_SM_RST(r16,v)          _BFSET_(r16, 2, 0,v)

    #define   GET32smSysCtl_SM_WDT_MASK_SOC_RST(r32)           _BFGET_(r32, 5, 3)
    #define   SET32smSysCtl_SM_WDT_MASK_SOC_RST(r32,v)         _BFSET_(r32, 5, 3,v)
    #define   GET16smSysCtl_SM_WDT_MASK_SOC_RST(r16)           _BFGET_(r16, 5, 3)
    #define   SET16smSysCtl_SM_WDT_MASK_SOC_RST(r16,v)         _BFSET_(r16, 5, 3,v)

    #define     w32smSysCtl_SM_WDT_MASK                        {\
            UNSG32 uSM_WDT_MASK_SM_RST                         :  3;\
            UNSG32 uSM_WDT_MASK_SOC_RST                        :  3;\
            UNSG32 RSVDx3C_b6                                  : 26;\
          }
    union { UNSG32 u32smSysCtl_SM_WDT_MASK;
            struct w32smSysCtl_SM_WDT_MASK;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_CLK_CTRL_tsenClkSel(r32)        _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_CLK_CTRL_tsenClkSel(r32,v)      _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_CLK_CTRL_tsenClkSel(r16)        _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_CLK_CTRL_tsenClkSel(r16,v)      _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_CLK_CTRL_tsenClkEn(r32)         _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_CLK_CTRL_tsenClkEn(r32,v)       _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_CLK_CTRL_tsenClkEn(r16)         _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_CLK_CTRL_tsenClkEn(r16,v)       _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel(r32)     _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel(r32,v)   _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel(r16)     _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_CLK_CTRL_ssmiiTxClkSel(r16,v)   _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn(r32)      _BFGET_(r32, 3, 3)
    #define   SET32smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn(r32,v)    _BFSET_(r32, 3, 3,v)
    #define   GET16smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn(r16)      _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_SM_CLK_CTRL_ssmiiTxClkEn(r16,v)    _BFSET_(r16, 3, 3,v)

    #define     w32smSysCtl_SM_CLK_CTRL                        {\
            UNSG32 uSM_CLK_CTRL_tsenClkSel                     :  1;\
            UNSG32 uSM_CLK_CTRL_tsenClkEn                      :  1;\
            UNSG32 uSM_CLK_CTRL_ssmiiTxClkSel                  :  1;\
            UNSG32 uSM_CLK_CTRL_ssmiiTxClkEn                   :  1;\
            UNSG32 RSVDx40_b4                                  : 28;\
          }
    union { UNSG32 u32smSysCtl_SM_CLK_CTRL;
            struct w32smSysCtl_SM_CLK_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_smAnaGrpCtl_pu(r32)                _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_smAnaGrpCtl_pu(r32,v)              _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_smAnaGrpCtl_pu(r16)                _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_smAnaGrpCtl_pu(r16,v)              _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_smAnaGrpCtl_bgSel(r32)             _BFGET_(r32, 2, 1)
    #define   SET32smSysCtl_smAnaGrpCtl_bgSel(r32,v)           _BFSET_(r32, 2, 1,v)
    #define   GET16smSysCtl_smAnaGrpCtl_bgSel(r16)             _BFGET_(r16, 2, 1)
    #define   SET16smSysCtl_smAnaGrpCtl_bgSel(r16,v)           _BFSET_(r16, 2, 1,v)

    #define   GET32smSysCtl_smAnaGrpCtl_puXtl(r32)             _BFGET_(r32, 3, 3)
    #define   SET32smSysCtl_smAnaGrpCtl_puXtl(r32,v)           _BFSET_(r32, 3, 3,v)
    #define   GET16smSysCtl_smAnaGrpCtl_puXtl(r16)             _BFGET_(r16, 3, 3)
    #define   SET16smSysCtl_smAnaGrpCtl_puXtl(r16,v)           _BFSET_(r16, 3, 3,v)

    #define   GET32smSysCtl_smAnaGrpCtl_bypass(r32)            _BFGET_(r32, 4, 4)
    #define   SET32smSysCtl_smAnaGrpCtl_bypass(r32,v)          _BFSET_(r32, 4, 4,v)
    #define   GET16smSysCtl_smAnaGrpCtl_bypass(r16)            _BFGET_(r16, 4, 4)
    #define   SET16smSysCtl_smAnaGrpCtl_bypass(r16,v)          _BFSET_(r16, 4, 4,v)

    #define   GET32smSysCtl_smAnaGrpCtl_gainX2(r32)            _BFGET_(r32, 5, 5)
    #define   SET32smSysCtl_smAnaGrpCtl_gainX2(r32,v)          _BFSET_(r32, 5, 5,v)
    #define   GET16smSysCtl_smAnaGrpCtl_gainX2(r16)            _BFGET_(r16, 5, 5)
    #define   SET16smSysCtl_smAnaGrpCtl_gainX2(r16,v)          _BFSET_(r16, 5, 5,v)

    #define   GET32smSysCtl_smAnaGrpCtl_selClkDigDiv1(r32)     _BFGET_(r32, 7, 6)
    #define   SET32smSysCtl_smAnaGrpCtl_selClkDigDiv1(r32,v)   _BFSET_(r32, 7, 6,v)
    #define   GET16smSysCtl_smAnaGrpCtl_selClkDigDiv1(r16)     _BFGET_(r16, 7, 6)
    #define   SET16smSysCtl_smAnaGrpCtl_selClkDigDiv1(r16,v)   _BFSET_(r16, 7, 6,v)

    #define   GET32smSysCtl_smAnaGrpCtl_selClkDigDiv2(r32)     _BFGET_(r32, 9, 8)
    #define   SET32smSysCtl_smAnaGrpCtl_selClkDigDiv2(r32,v)   _BFSET_(r32, 9, 8,v)
    #define   GET16smSysCtl_smAnaGrpCtl_selClkDigDiv2(r16)     _BFGET_(r16, 9, 8)
    #define   SET16smSysCtl_smAnaGrpCtl_selClkDigDiv2(r16,v)   _BFSET_(r16, 9, 8,v)

    #define   GET32smSysCtl_smAnaGrpCtl_selClkDigDiv3(r32)     _BFGET_(r32,11,10)
    #define   SET32smSysCtl_smAnaGrpCtl_selClkDigDiv3(r32,v)   _BFSET_(r32,11,10,v)
    #define   GET16smSysCtl_smAnaGrpCtl_selClkDigDiv3(r16)     _BFGET_(r16,11,10)
    #define   SET16smSysCtl_smAnaGrpCtl_selClkDigDiv3(r16,v)   _BFSET_(r16,11,10,v)

    #define   GET32smSysCtl_smAnaGrpCtl_selClkDigDiv4(r32)     _BFGET_(r32,13,12)
    #define   SET32smSysCtl_smAnaGrpCtl_selClkDigDiv4(r32,v)   _BFSET_(r32,13,12,v)
    #define   GET16smSysCtl_smAnaGrpCtl_selClkDigDiv4(r16)     _BFGET_(r16,13,12)
    #define   SET16smSysCtl_smAnaGrpCtl_selClkDigDiv4(r16,v)   _BFSET_(r16,13,12,v)

    #define   GET32smSysCtl_smAnaGrpCtl_puOsc(r32)             _BFGET_(r32,14,14)
    #define   SET32smSysCtl_smAnaGrpCtl_puOsc(r32,v)           _BFSET_(r32,14,14,v)
    #define   GET16smSysCtl_smAnaGrpCtl_puOsc(r16)             _BFGET_(r16,14,14)
    #define   SET16smSysCtl_smAnaGrpCtl_puOsc(r16,v)           _BFSET_(r16,14,14,v)

    #define   GET32smSysCtl_smAnaGrpCtl_speedOsc(r32)          _BFGET_(r32,16,15)
    #define   SET32smSysCtl_smAnaGrpCtl_speedOsc(r32,v)        _BFSET_(r32,16,15,v)

    #define   GET32smSysCtl_smAnaGrpCtl_testAna(r32)           _BFGET_(r32,20,17)
    #define   SET32smSysCtl_smAnaGrpCtl_testAna(r32,v)         _BFSET_(r32,20,17,v)
    #define   GET16smSysCtl_smAnaGrpCtl_testAna(r16)           _BFGET_(r16, 4, 1)
    #define   SET16smSysCtl_smAnaGrpCtl_testAna(r16,v)         _BFSET_(r16, 4, 1,v)

    #define   GET32smSysCtl_smAnaGrpCtl_bgRdy(r32)             _BFGET_(r32,21,21)
    #define   SET32smSysCtl_smAnaGrpCtl_bgRdy(r32,v)           _BFSET_(r32,21,21,v)
    #define   GET16smSysCtl_smAnaGrpCtl_bgRdy(r16)             _BFGET_(r16, 5, 5)
    #define   SET16smSysCtl_smAnaGrpCtl_bgRdy(r16,v)           _BFSET_(r16, 5, 5,v)

    #define   GET32smSysCtl_smAnaGrpCtl_reserve_in(r32)        _BFGET_(r32,31,22)
    #define   SET32smSysCtl_smAnaGrpCtl_reserve_in(r32,v)      _BFSET_(r32,31,22,v)
    #define   GET16smSysCtl_smAnaGrpCtl_reserve_in(r16)        _BFGET_(r16,15, 6)
    #define   SET16smSysCtl_smAnaGrpCtl_reserve_in(r16,v)      _BFSET_(r16,15, 6,v)

    #define     w32smSysCtl_smAnaGrpCtl                        {\
            UNSG32 usmAnaGrpCtl_pu                             :  1;\
            UNSG32 usmAnaGrpCtl_bgSel                          :  2;\
            UNSG32 usmAnaGrpCtl_puXtl                          :  1;\
            UNSG32 usmAnaGrpCtl_bypass                         :  1;\
            UNSG32 usmAnaGrpCtl_gainX2                         :  1;\
            UNSG32 usmAnaGrpCtl_selClkDigDiv1                  :  2;\
            UNSG32 usmAnaGrpCtl_selClkDigDiv2                  :  2;\
            UNSG32 usmAnaGrpCtl_selClkDigDiv3                  :  2;\
            UNSG32 usmAnaGrpCtl_selClkDigDiv4                  :  2;\
            UNSG32 usmAnaGrpCtl_puOsc                          :  1;\
            UNSG32 usmAnaGrpCtl_speedOsc                       :  2;\
            UNSG32 usmAnaGrpCtl_testAna                        :  4;\
            UNSG32 usmAnaGrpCtl_bgRdy                          :  1;\
            UNSG32 usmAnaGrpCtl_reserve_in                     : 10;\
          }
    union { UNSG32 u32smSysCtl_smAnaGrpCtl;
            struct w32smSysCtl_smAnaGrpCtl;
          };
    #define   GET32smSysCtl_smAnaGrpCtl_xtl_pecl_sel(r32)      _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_smAnaGrpCtl_xtl_pecl_sel(r32,v)    _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_smAnaGrpCtl_xtl_pecl_sel(r16)      _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_smAnaGrpCtl_xtl_pecl_sel(r16,v)    _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_smAnaGrpCtl_vreg_1p2v_sel(r32)     _BFGET_(r32, 2, 1)
    #define   SET32smSysCtl_smAnaGrpCtl_vreg_1p2v_sel(r32,v)   _BFSET_(r32, 2, 1,v)
    #define   GET16smSysCtl_smAnaGrpCtl_vreg_1p2v_sel(r16)     _BFGET_(r16, 2, 1)
    #define   SET16smSysCtl_smAnaGrpCtl_vreg_1p2v_sel(r16,v)   _BFSET_(r16, 2, 1,v)

    #define   GET32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl(r32) _BFGET_(r32, 5, 3)
    #define   SET32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl(r32,v) _BFSET_(r32, 5, 3,v)
    #define   GET16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl(r16) _BFGET_(r16, 5, 3)
    #define   SET16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_xtl(r16,v) _BFSET_(r16, 5, 3,v)

    #define   GET32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl(r32) _BFGET_(r32, 8, 6)
    #define   SET32smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl(r32,v) _BFSET_(r32, 8, 6,v)
    #define   GET16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl(r16) _BFGET_(r16, 8, 6)
    #define   SET16smSysCtl_smAnaGrpCtl_vreg_1p05v_sel_pecl(r16,v) _BFSET_(r16, 8, 6,v)

    #define   GET32smSysCtl_smAnaGrpCtl_term(r32)              _BFGET_(r32, 9, 9)
    #define   SET32smSysCtl_smAnaGrpCtl_term(r32,v)            _BFSET_(r32, 9, 9,v)
    #define   GET16smSysCtl_smAnaGrpCtl_term(r16)              _BFGET_(r16, 9, 9)
    #define   SET16smSysCtl_smAnaGrpCtl_term(r16,v)            _BFSET_(r16, 9, 9,v)

    #define   GET32smSysCtl_smAnaGrpCtl_pu_pecl(r32)           _BFGET_(r32,10,10)
    #define   SET32smSysCtl_smAnaGrpCtl_pu_pecl(r32,v)         _BFSET_(r32,10,10,v)
    #define   GET16smSysCtl_smAnaGrpCtl_pu_pecl(r16)           _BFGET_(r16,10,10)
    #define   SET16smSysCtl_smAnaGrpCtl_pu_pecl(r16,v)         _BFSET_(r16,10,10,v)

    #define   GET32smSysCtl_smAnaGrpCtl_pecl_en(r32)           _BFGET_(r32,11,11)
    #define   SET32smSysCtl_smAnaGrpCtl_pecl_en(r32,v)         _BFSET_(r32,11,11,v)
    #define   GET16smSysCtl_smAnaGrpCtl_pecl_en(r16)           _BFGET_(r16,11,11)
    #define   SET16smSysCtl_smAnaGrpCtl_pecl_en(r16,v)         _BFSET_(r16,11,11,v)

    #define   GET32smSysCtl_smAnaGrpCtl_pu_limiter(r32)        _BFGET_(r32,12,12)
    #define   SET32smSysCtl_smAnaGrpCtl_pu_limiter(r32,v)      _BFSET_(r32,12,12,v)
    #define   GET16smSysCtl_smAnaGrpCtl_pu_limiter(r16)        _BFGET_(r16,12,12)
    #define   SET16smSysCtl_smAnaGrpCtl_pu_limiter(r16,v)      _BFSET_(r16,12,12,v)

    #define   GET32smSysCtl_smAnaGrpCtl_limiter_dc_clk_en(r32) _BFGET_(r32,13,13)
    #define   SET32smSysCtl_smAnaGrpCtl_limiter_dc_clk_en(r32,v) _BFSET_(r32,13,13,v)
    #define   GET16smSysCtl_smAnaGrpCtl_limiter_dc_clk_en(r16) _BFGET_(r16,13,13)
    #define   SET16smSysCtl_smAnaGrpCtl_limiter_dc_clk_en(r16,v) _BFSET_(r16,13,13,v)

    #define   GET32smSysCtl_smAnaGrpCtl_ipp_adj(r32)           _BFGET_(r32,15,14)
    #define   SET32smSysCtl_smAnaGrpCtl_ipp_adj(r32,v)         _BFSET_(r32,15,14,v)
    #define   GET16smSysCtl_smAnaGrpCtl_ipp_adj(r16)           _BFGET_(r16,15,14)
    #define   SET16smSysCtl_smAnaGrpCtl_ipp_adj(r16,v)         _BFSET_(r16,15,14,v)

    #define   GET32smSysCtl_smAnaGrpCtl_icc_adj(r32)           _BFGET_(r32,17,16)
    #define   SET32smSysCtl_smAnaGrpCtl_icc_adj(r32,v)         _BFSET_(r32,17,16,v)
    #define   GET16smSysCtl_smAnaGrpCtl_icc_adj(r16)           _BFGET_(r16, 1, 0)
    #define   SET16smSysCtl_smAnaGrpCtl_icc_adj(r16,v)         _BFSET_(r16, 1, 0,v)

    #define   GET32smSysCtl_smAnaGrpCtl_ixtal(r32)             _BFGET_(r32,19,18)
    #define   SET32smSysCtl_smAnaGrpCtl_ixtal(r32,v)           _BFSET_(r32,19,18,v)
    #define   GET16smSysCtl_smAnaGrpCtl_ixtal(r16)             _BFGET_(r16, 3, 2)
    #define   SET16smSysCtl_smAnaGrpCtl_ixtal(r16,v)           _BFSET_(r16, 3, 2,v)

    #define   GET32smSysCtl_smAnaGrpCtl_icc10u_in_sel(r32)     _BFGET_(r32,20,20)
    #define   SET32smSysCtl_smAnaGrpCtl_icc10u_in_sel(r32,v)   _BFSET_(r32,20,20,v)
    #define   GET16smSysCtl_smAnaGrpCtl_icc10u_in_sel(r16)     _BFGET_(r16, 4, 4)
    #define   SET16smSysCtl_smAnaGrpCtl_icc10u_in_sel(r16,v)   _BFSET_(r16, 4, 4,v)

    #define   GET32smSysCtl_smAnaGrpCtl_reserve_out(r32)       _BFGET_(r32,26,21)
    #define   SET32smSysCtl_smAnaGrpCtl_reserve_out(r32,v)     _BFSET_(r32,26,21,v)
    #define   GET16smSysCtl_smAnaGrpCtl_reserve_out(r16)       _BFGET_(r16,10, 5)
    #define   SET16smSysCtl_smAnaGrpCtl_reserve_out(r16,v)     _BFSET_(r16,10, 5,v)

    #define     w32smSysCtl_smAnaGrpCtl1                       {\
            UNSG32 usmAnaGrpCtl_xtl_pecl_sel                   :  1;\
            UNSG32 usmAnaGrpCtl_vreg_1p2v_sel                  :  2;\
            UNSG32 usmAnaGrpCtl_vreg_1p05v_sel_xtl             :  3;\
            UNSG32 usmAnaGrpCtl_vreg_1p05v_sel_pecl            :  3;\
            UNSG32 usmAnaGrpCtl_term                           :  1;\
            UNSG32 usmAnaGrpCtl_pu_pecl                        :  1;\
            UNSG32 usmAnaGrpCtl_pecl_en                        :  1;\
            UNSG32 usmAnaGrpCtl_pu_limiter                     :  1;\
            UNSG32 usmAnaGrpCtl_limiter_dc_clk_en              :  1;\
            UNSG32 usmAnaGrpCtl_ipp_adj                        :  2;\
            UNSG32 usmAnaGrpCtl_icc_adj                        :  2;\
            UNSG32 usmAnaGrpCtl_ixtal                          :  2;\
            UNSG32 usmAnaGrpCtl_icc10u_in_sel                  :  1;\
            UNSG32 usmAnaGrpCtl_reserve_out                    :  6;\
            UNSG32 RSVDx48_b27                                 :  5;\
          }
    union { UNSG32 u32smSysCtl_smAnaGrpCtl1;
            struct w32smSysCtl_smAnaGrpCtl1;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE(r32) _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE(r32,v) _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE(r16) _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_CORE_CTRL_PAD_REG_PDB_CORE(r16,v) _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE(r32)   _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE(r32,v) _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE(r16)   _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_CORE_CTRL_PAD_V18EN_CORE(r16,v) _BFSET_(r16, 1, 1,v)

    #define   GET32smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE(r32)   _BFGET_(r32, 2, 2)
    #define   SET32smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE(r32,v) _BFSET_(r32, 2, 2,v)
    #define   GET16smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE(r16)   _BFGET_(r16, 2, 2)
    #define   SET16smSysCtl_SM_CORE_CTRL_PAD_V25EN_CORE(r16,v) _BFSET_(r16, 2, 2,v)

    #define   GET32smSysCtl_SM_CORE_CTRL_PAD_ZP(r32)           _BFGET_(r32, 6, 3)
    #define   SET32smSysCtl_SM_CORE_CTRL_PAD_ZP(r32,v)         _BFSET_(r32, 6, 3,v)
    #define   GET16smSysCtl_SM_CORE_CTRL_PAD_ZP(r16)           _BFGET_(r16, 6, 3)
    #define   SET16smSysCtl_SM_CORE_CTRL_PAD_ZP(r16,v)         _BFSET_(r16, 6, 3,v)

    #define   GET32smSysCtl_SM_CORE_CTRL_PAD_ZN(r32)           _BFGET_(r32,10, 7)
    #define   SET32smSysCtl_SM_CORE_CTRL_PAD_ZN(r32,v)         _BFSET_(r32,10, 7,v)
    #define   GET16smSysCtl_SM_CORE_CTRL_PAD_ZN(r16)           _BFGET_(r16,10, 7)
    #define   SET16smSysCtl_SM_CORE_CTRL_PAD_ZN(r16,v)         _BFSET_(r16,10, 7,v)

    #define     w32smSysCtl_SM_CORE_CTRL                       {\
            UNSG32 uSM_CORE_CTRL_PAD_REG_PDB_CORE              :  1;\
            UNSG32 uSM_CORE_CTRL_PAD_V18EN_CORE                :  1;\
            UNSG32 uSM_CORE_CTRL_PAD_V25EN_CORE                :  1;\
            UNSG32 uSM_CORE_CTRL_PAD_ZP                        :  4;\
            UNSG32 uSM_CORE_CTRL_PAD_ZN                        :  4;\
            UNSG32 RSVDx4C_b11                                 : 21;\
          }
    union { UNSG32 u32smSysCtl_SM_CORE_CTRL;
            struct w32smSysCtl_SM_CORE_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_TEST_ADC_TEST_FAIL(r32)         _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_TEST_ADC_TEST_FAIL(r32,v)       _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_TEST_ADC_TEST_FAIL(r16)         _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_TEST_ADC_TEST_FAIL(r16,v)       _BFSET_(r16, 0, 0,v)

    #define     w32smSysCtl_SM_TEST                            {\
            UNSG32 uSM_TEST_ADC_TEST_FAIL                      :  1;\
            UNSG32 RSVDx50_b1                                  : 31;\
          }
    union { UNSG32 u32smSysCtl_SM_TEST;
            struct w32smSysCtl_SM_TEST;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH(r32)   _BFGET_(r32, 9, 0)
    #define   SET32smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH(r32,v) _BFSET_(r32, 9, 0,v)
    #define   GET16smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH(r16)   _BFGET_(r16, 9, 0)
    #define   SET16smSysCtl_SM_TEST_DATA0_ADC_DATA_HIGH(r16,v) _BFSET_(r16, 9, 0,v)

    #define     w32smSysCtl_SM_TEST_DATA0                      {\
            UNSG32 uSM_TEST_DATA0_ADC_DATA_HIGH                : 10;\
            UNSG32 RSVDx54_b10                                 : 22;\
          }
    union { UNSG32 u32smSysCtl_SM_TEST_DATA0;
            struct w32smSysCtl_SM_TEST_DATA0;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW(r32)    _BFGET_(r32, 9, 0)
    #define   SET32smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW(r32,v)  _BFSET_(r32, 9, 0,v)
    #define   GET16smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW(r16)    _BFGET_(r16, 9, 0)
    #define   SET16smSysCtl_SM_TEST_DATA1_ADC_DATA_LOW(r16,v)  _BFSET_(r16, 9, 0,v)

    #define     w32smSysCtl_SM_TEST_DATA1                      {\
            UNSG32 uSM_TEST_DATA1_ADC_DATA_LOW                 : 10;\
            UNSG32 RSVDx58_b10                                 : 22;\
          }
    union { UNSG32 u32smSysCtl_SM_TEST_DATA1;
            struct w32smSysCtl_SM_TEST_DATA1;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW(r32)       _BFGET_(r32, 3, 0)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW(r32,v)     _BFSET_(r32, 3, 0,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW(r16)       _BFGET_(r16, 3, 0)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_RF1P_LOW(r16,v)     _BFSET_(r16, 3, 0,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH(r32)      _BFGET_(r32, 7, 4)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH(r32,v)    _BFSET_(r32, 7, 4,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH(r16)      _BFGET_(r16, 7, 4)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_RF1P_HIGH(r16,v)    _BFSET_(r16, 7, 4,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW(r32)       _BFGET_(r32,11, 8)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW(r32,v)     _BFSET_(r32,11, 8,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW(r16)       _BFGET_(r16,11, 8)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_RF2P_LOW(r16,v)     _BFSET_(r16,11, 8,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH(r32)      _BFGET_(r32,15,12)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH(r32,v)    _BFSET_(r32,15,12,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH(r16)      _BFGET_(r16,15,12)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_RF2P_HIGH(r16,v)    _BFSET_(r16,15,12,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW(r32)       _BFGET_(r32,19,16)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW(r32,v)     _BFSET_(r32,19,16,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW(r16)       _BFGET_(r16, 3, 0)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_SR1P_LOW(r16,v)     _BFSET_(r16, 3, 0,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH(r32)      _BFGET_(r32,23,20)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH(r32,v)    _BFSET_(r32,23,20,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH(r16)      _BFGET_(r16, 7, 4)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_SR1P_HIGH(r16,v)    _BFSET_(r16, 7, 4,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW(r32)       _BFGET_(r32,27,24)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW(r32,v)     _BFSET_(r32,27,24,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW(r16)       _BFGET_(r16,11, 8)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_SR2P_LOW(r16,v)     _BFSET_(r16,11, 8,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH(r32)      _BFGET_(r32,31,28)
    #define   SET32smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH(r32,v)    _BFSET_(r32,31,28,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH(r16)      _BFGET_(r16,15,12)
    #define   SET16smSysCtl_SM_RWTC_CTRL_0_SR2P_HIGH(r16,v)    _BFSET_(r16,15,12,v)

    #define     w32smSysCtl_SM_RWTC_CTRL_0                     {\
            UNSG32 uSM_RWTC_CTRL_0_RF1P_LOW                    :  4;\
            UNSG32 uSM_RWTC_CTRL_0_RF1P_HIGH                   :  4;\
            UNSG32 uSM_RWTC_CTRL_0_RF2P_LOW                    :  4;\
            UNSG32 uSM_RWTC_CTRL_0_RF2P_HIGH                   :  4;\
            UNSG32 uSM_RWTC_CTRL_0_SR1P_LOW                    :  4;\
            UNSG32 uSM_RWTC_CTRL_0_SR1P_HIGH                   :  4;\
            UNSG32 uSM_RWTC_CTRL_0_SR2P_LOW                    :  4;\
            UNSG32 uSM_RWTC_CTRL_0_SR2P_HIGH                   :  4;\
          }
    union { UNSG32 u32smSysCtl_SM_RWTC_CTRL_0;
            struct w32smSysCtl_SM_RWTC_CTRL_0;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_RWTC_CTRL_1_ROM_LOW(r32)        _BFGET_(r32, 4, 0)
    #define   SET32smSysCtl_SM_RWTC_CTRL_1_ROM_LOW(r32,v)      _BFSET_(r32, 4, 0,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_1_ROM_LOW(r16)        _BFGET_(r16, 4, 0)
    #define   SET16smSysCtl_SM_RWTC_CTRL_1_ROM_LOW(r16,v)      _BFSET_(r16, 4, 0,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH(r32)       _BFGET_(r32, 9, 5)
    #define   SET32smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH(r32,v)     _BFSET_(r32, 9, 5,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH(r16)       _BFGET_(r16, 9, 5)
    #define   SET16smSysCtl_SM_RWTC_CTRL_1_ROM_HIGH(r16,v)     _BFSET_(r16, 9, 5,v)

    #define   GET32smSysCtl_SM_RWTC_CTRL_1_ACMEM(r32)          _BFGET_(r32,13,10)
    #define   SET32smSysCtl_SM_RWTC_CTRL_1_ACMEM(r32,v)        _BFSET_(r32,13,10,v)
    #define   GET16smSysCtl_SM_RWTC_CTRL_1_ACMEM(r16)          _BFGET_(r16,13,10)
    #define   SET16smSysCtl_SM_RWTC_CTRL_1_ACMEM(r16,v)        _BFSET_(r16,13,10,v)

    #define     w32smSysCtl_SM_RWTC_CTRL_1                     {\
            UNSG32 uSM_RWTC_CTRL_1_ROM_LOW                     :  5;\
            UNSG32 uSM_RWTC_CTRL_1_ROM_HIGH                    :  5;\
            UNSG32 uSM_RWTC_CTRL_1_ACMEM                       :  4;\
            UNSG32 RSVDx60_b14                                 : 18;\
          }
    union { UNSG32 u32smSysCtl_SM_RWTC_CTRL_1;
            struct w32smSysCtl_SM_RWTC_CTRL_1;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_PORT_SEL_CTRL_TW2(r32)          _BFGET_(r32, 0, 0)
    #define   SET32smSysCtl_SM_PORT_SEL_CTRL_TW2(r32,v)        _BFSET_(r32, 0, 0,v)
    #define   GET16smSysCtl_SM_PORT_SEL_CTRL_TW2(r16)          _BFGET_(r16, 0, 0)
    #define   SET16smSysCtl_SM_PORT_SEL_CTRL_TW2(r16,v)        _BFSET_(r16, 0, 0,v)

    #define   GET32smSysCtl_SM_PORT_SEL_CTRL_URT1(r32)         _BFGET_(r32, 1, 1)
    #define   SET32smSysCtl_SM_PORT_SEL_CTRL_URT1(r32,v)       _BFSET_(r32, 1, 1,v)
    #define   GET16smSysCtl_SM_PORT_SEL_CTRL_URT1(r16)         _BFGET_(r16, 1, 1)
    #define   SET16smSysCtl_SM_PORT_SEL_CTRL_URT1(r16,v)       _BFSET_(r16, 1, 1,v)

    #define     w32smSysCtl_SM_PORT_SEL_CTRL                   {\
            UNSG32 uSM_PORT_SEL_CTRL_TW2                       :  1;\
            UNSG32 uSM_PORT_SEL_CTRL_URT1                      :  1;\
            UNSG32 RSVDx64_b2                                  : 30;\
          }
    union { UNSG32 u32smSysCtl_SM_PORT_SEL_CTRL;
            struct w32smSysCtl_SM_PORT_SEL_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW(r32) _BFGET_(r32,11, 0)
    #define   SET32smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW(r32,v) _BFSET_(r32,11, 0,v)
    #define   GET16smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW(r16) _BFGET_(r16,11, 0)
    #define   SET16smSysCtl_TSEN_ADC_RAW_DATA_TSEN_DATA_RAW(r16,v) _BFSET_(r16,11, 0,v)

    #define     w32smSysCtl_TSEN_ADC_RAW_DATA                  {\
            UNSG32 uTSEN_ADC_RAW_DATA_TSEN_DATA_RAW            : 12;\
            UNSG32 RSVDx68_b12                                 : 20;\
          }
    union { UNSG32 u32smSysCtl_TSEN_ADC_RAW_DATA;
            struct w32smSysCtl_TSEN_ADC_RAW_DATA;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV(r32)      _BFGET_(r32, 2, 0)
    #define   SET32smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV(r32,v)    _BFSET_(r32, 2, 0,v)
    #define   GET16smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV(r16)      _BFGET_(r16, 2, 0)
    #define   SET16smSysCtl_TSEN_ADC_CLK_DIV_ADC_DIV(r16,v)    _BFSET_(r16, 2, 0,v)

    #define   GET32smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV(r32)     _BFGET_(r32, 6, 3)
    #define   SET32smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV(r32,v)   _BFSET_(r32, 6, 3,v)
    #define   GET16smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV(r16)     _BFGET_(r16, 6, 3)
    #define   SET16smSysCtl_TSEN_ADC_CLK_DIV_TSEN_DIV(r16,v)   _BFSET_(r16, 6, 3,v)

    #define     w32smSysCtl_TSEN_ADC_CLK_DIV                   {\
            UNSG32 uTSEN_ADC_CLK_DIV_ADC_DIV                   :  3;\
            UNSG32 uTSEN_ADC_CLK_DIV_TSEN_DIV                  :  4;\
            UNSG32 RSVDx6C_b7                                  : 25;\
          }
    union { UNSG32 u32smSysCtl_TSEN_ADC_CLK_DIV;
            struct w32smSysCtl_TSEN_ADC_CLK_DIV;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ(r32)    _BFGET_(r32, 7, 0)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ(r32,v)  _BFSET_(r32, 7, 0,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ(r16)    _BFGET_(r16, 7, 0)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_ADC_VREF_ADJ(r16,v)  _BFSET_(r16, 7, 0,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_TSEN_START(r32)      _BFGET_(r32, 8, 8)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_TSEN_START(r32,v)    _BFSET_(r32, 8, 8,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_TSEN_START(r16)      _BFGET_(r16, 8, 8)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_TSEN_START(r16,v)    _BFSET_(r16, 8, 8,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM(r32)    _BFGET_(r32,11, 9)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM(r32,v)  _BFSET_(r32,11, 9,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM(r16)    _BFGET_(r16,11, 9)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_TSEN_AVG_NUM(r16,v)  _BFSET_(r16,11, 9,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN(r32)     _BFGET_(r32,12,12)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN(r32,v)   _BFSET_(r32,12,12,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN(r16)     _BFGET_(r16,12,12)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_TSEN_EXT_EN(r16,v)   _BFSET_(r16,12,12,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN(r32)    _BFGET_(r32,14,13)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN(r32,v)  _BFSET_(r32,14,13,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN(r16)    _BFGET_(r16,14,13)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_TSEN_CHOP_EN(r16,v)  _BFSET_(r16,14,13,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_TSEN_CAL(r32)        _BFGET_(r32,16,15)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_TSEN_CAL(r32,v)      _BFSET_(r32,16,15,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD(r32)       _BFGET_(r32,20,17)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD(r32,v)     _BFSET_(r32,20,17,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD(r16)       _BFGET_(r16, 4, 1)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_TSEN_RSVD(r16,v)     _BFSET_(r16, 4, 1,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL(r32)      _BFGET_(r32,21,21)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL(r32,v)    _BFSET_(r32,21,21,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL(r16)      _BFGET_(r16, 5, 5)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_BG_CHP_SEL(r16,v)    _BFSET_(r16, 5, 5,v)

    #define   GET32smSysCtl_TSEN_ADC_CTRL_BG_DTRIM(r32)        _BFGET_(r32,25,22)
    #define   SET32smSysCtl_TSEN_ADC_CTRL_BG_DTRIM(r32,v)      _BFSET_(r32,25,22,v)
    #define   GET16smSysCtl_TSEN_ADC_CTRL_BG_DTRIM(r16)        _BFGET_(r16, 9, 6)
    #define   SET16smSysCtl_TSEN_ADC_CTRL_BG_DTRIM(r16,v)      _BFSET_(r16, 9, 6,v)

    #define     w32smSysCtl_TSEN_ADC_CTRL                      {\
            UNSG32 uTSEN_ADC_CTRL_ADC_VREF_ADJ                 :  8;\
            UNSG32 uTSEN_ADC_CTRL_TSEN_START                   :  1;\
            UNSG32 uTSEN_ADC_CTRL_TSEN_AVG_NUM                 :  3;\
            UNSG32 uTSEN_ADC_CTRL_TSEN_EXT_EN                  :  1;\
            UNSG32 uTSEN_ADC_CTRL_TSEN_CHOP_EN                 :  2;\
            UNSG32 uTSEN_ADC_CTRL_TSEN_CAL                     :  2;\
            UNSG32 uTSEN_ADC_CTRL_TSEN_RSVD                    :  4;\
            UNSG32 uTSEN_ADC_CTRL_BG_CHP_SEL                   :  1;\
            UNSG32 uTSEN_ADC_CTRL_BG_DTRIM                     :  4;\
            UNSG32 RSVDx70_b26                                 :  6;\
          }
    union { UNSG32 u32smSysCtl_TSEN_ADC_CTRL;
            struct w32smSysCtl_TSEN_ADC_CTRL;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL(r32)     _BFGET_(r32, 1, 0)
    #define   SET32smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL(r32,v)   _BFSET_(r32, 1, 0,v)
    #define   GET16smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL(r16)     _BFGET_(r16, 1, 0)
    #define   SET16smSysCtl_TSEN_ADC_DBG_TSEN_RAW_SEL(r16,v)   _BFSET_(r16, 1, 0,v)

    #define     w32smSysCtl_TSEN_ADC_DBG                       {\
            UNSG32 uTSEN_ADC_DBG_TSEN_RAW_SEL                  :  2;\
            UNSG32 RSVDx74_b2                                  : 30;\
          }
    union { UNSG32 u32smSysCtl_TSEN_ADC_DBG;
            struct w32smSysCtl_TSEN_ADC_DBG;
          };
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_SM_DUMMY_REG_REG0(r32)             _BFGET_(r32,31, 0)
    #define   SET32smSysCtl_SM_DUMMY_REG_REG0(r32,v)           _BFSET_(r32,31, 0,v)

    #define     w32smSysCtl_SM_DUMMY_REG                       {\
            UNSG32 uSM_DUMMY_REG_REG0                          : 32;\
          }
    union { UNSG32 u32smSysCtl_SM_DUMMY_REG;
            struct w32smSysCtl_SM_DUMMY_REG;
          };
    ///////////////////////////////////////////////////////////
             UNSG8 RSVDx7C                                     [388];
    ///////////////////////////////////////////////////////////
    #define   GET32smSysCtl_smPinMuxCntlBus_SM_TMS(r32)        _BFGET_(r32, 2, 0)
    #define   SET32smSysCtl_smPinMuxCntlBus_SM_TMS(r32,v)      _BFSET_(r32, 2, 0,v)
    #define   GET16smSysCtl_smPinMuxCntlBus_SM_TMS(r16)        _BFGET_(r16, 2, 0)
    #define   SET16smSysCtl_smPinMuxCntlBus_SM_TMS(r16,v)      _BFSET_(r16, 2, 0,v)

    #define   GET32smSysCtl_smPinMuxCntlBus_SM_TDI(r32)        _BFGET_(r32, 5, 3)
    #define   SET32smSysCtl_smPinMuxCntlBus_SM_TDI(r32,v)      _BFSET_(r32, 5, 3,v)
    #define   GET16smSysCtl_smPinMuxCntlBus_SM_TDI(r16)        _BFGET_(r16, 5, 3)
    #define   SET16smSysCtl_smPinMuxCntlBus_SM_TDI(r16,v)      _BFSET_(r16, 5, 3,v)

    #define   GET32smSysCtl_smPinMuxCntlBus_SM_TDO(r32)        _BFGET_(r32, 8, 6)
    #define   SET32smSysCtl_smPinMuxCntlBus_SM_TDO(r32,v)      _BFSET_(r32, 8, 6,v)
    #define   GET16smSysCtl_smPinMuxCntlBus_SM_TDO(r16)        _BFGET_(r16, 8, 6)
    #define   SET16smSysCtl_smPinMuxCntlBus_SM_TDO(r16,v)      _BFSET_(r16, 8, 6,v)

    #define     w32smSysCtl_smPinMuxCntlBus                    {\
            UNSG32 usmPinMuxCntlBus_SM_TMS                     :  3;\
            UNSG32 usmPinMuxCntlBus_SM_TDI                     :  3;\
            UNSG32 usmPinMuxCntlBus_SM_TDO                     :  3;\
            UNSG32 RSVDx200_b9                                 : 23;\
          }
    union { UNSG32 u32smSysCtl_smPinMuxCntlBus;
            struct w32smSysCtl_smPinMuxCntlBus;
          };
    ///////////////////////////////////////////////////////////
    } SIE_smSysCtl;

    typedef union  T32smSysCtl_SM_ID
          { UNSG32 u32;
            struct w32smSysCtl_SM_ID;
                 } T32smSysCtl_SM_ID;
    typedef union  T32smSysCtl_SM_CPU_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_CPU_CTRL;
                 } T32smSysCtl_SM_CPU_CTRL;
    typedef union  T32smSysCtl_SM_RST_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_RST_CTRL;
                 } T32smSysCtl_SM_RST_CTRL;
    typedef union  T32smSysCtl_SM_RST_STATUS
          { UNSG32 u32;
            struct w32smSysCtl_SM_RST_STATUS;
                 } T32smSysCtl_SM_RST_STATUS;
    typedef union  T32smSysCtl_SM_STRP_STATUS
          { UNSG32 u32;
            struct w32smSysCtl_SM_STRP_STATUS;
                 } T32smSysCtl_SM_STRP_STATUS;
    typedef union  T32smSysCtl_SM_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_CTRL;
                 } T32smSysCtl_SM_CTRL;
    typedef union  T32smSysCtl_SM_ADC_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_ADC_CTRL;
                 } T32smSysCtl_SM_ADC_CTRL;
    typedef union  T32smSysCtl_SM_ADC_STATUS
          { UNSG32 u32;
            struct w32smSysCtl_SM_ADC_STATUS;
                 } T32smSysCtl_SM_ADC_STATUS;
    typedef union  T32smSysCtl_SM_ADC_DATA
          { UNSG32 u32;
            struct w32smSysCtl_SM_ADC_DATA;
                 } T32smSysCtl_SM_ADC_DATA;
    typedef union  T32smSysCtl_TSEN_ADC_STATUS
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_ADC_STATUS;
                 } T32smSysCtl_TSEN_ADC_STATUS;
    typedef union  T32smSysCtl_TSEN_ADC_DATA
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_ADC_DATA;
                 } T32smSysCtl_TSEN_ADC_DATA;
    typedef union  T32smSysCtl_TSEN_CHK_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_CHK_CTRL;
                 } T32smSysCtl_TSEN_CHK_CTRL;
    typedef union  T32smSysCtl_TSEN_DATA_STATUS
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_DATA_STATUS;
                 } T32smSysCtl_TSEN_DATA_STATUS;
    typedef union  T32smSysCtl_SM_BOOT_STATUS
          { UNSG32 u32;
            struct w32smSysCtl_SM_BOOT_STATUS;
                 } T32smSysCtl_SM_BOOT_STATUS;
    typedef union  T32smSysCtl_SM_LDO_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_LDO_CTRL;
                 } T32smSysCtl_SM_LDO_CTRL;
    typedef union  T32smSysCtl_SM_WDT_MASK
          { UNSG32 u32;
            struct w32smSysCtl_SM_WDT_MASK;
                 } T32smSysCtl_SM_WDT_MASK;
    typedef union  T32smSysCtl_SM_CLK_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_CLK_CTRL;
                 } T32smSysCtl_SM_CLK_CTRL;
    typedef union  T32smSysCtl_smAnaGrpCtl
          { UNSG32 u32;
            struct w32smSysCtl_smAnaGrpCtl;
                 } T32smSysCtl_smAnaGrpCtl;
    typedef union  T32smSysCtl_smAnaGrpCtl1
          { UNSG32 u32;
            struct w32smSysCtl_smAnaGrpCtl1;
                 } T32smSysCtl_smAnaGrpCtl1;
    typedef union  T32smSysCtl_SM_CORE_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_CORE_CTRL;
                 } T32smSysCtl_SM_CORE_CTRL;
    typedef union  T32smSysCtl_SM_TEST
          { UNSG32 u32;
            struct w32smSysCtl_SM_TEST;
                 } T32smSysCtl_SM_TEST;
    typedef union  T32smSysCtl_SM_TEST_DATA0
          { UNSG32 u32;
            struct w32smSysCtl_SM_TEST_DATA0;
                 } T32smSysCtl_SM_TEST_DATA0;
    typedef union  T32smSysCtl_SM_TEST_DATA1
          { UNSG32 u32;
            struct w32smSysCtl_SM_TEST_DATA1;
                 } T32smSysCtl_SM_TEST_DATA1;
    typedef union  T32smSysCtl_SM_RWTC_CTRL_0
          { UNSG32 u32;
            struct w32smSysCtl_SM_RWTC_CTRL_0;
                 } T32smSysCtl_SM_RWTC_CTRL_0;
    typedef union  T32smSysCtl_SM_RWTC_CTRL_1
          { UNSG32 u32;
            struct w32smSysCtl_SM_RWTC_CTRL_1;
                 } T32smSysCtl_SM_RWTC_CTRL_1;
    typedef union  T32smSysCtl_SM_PORT_SEL_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_SM_PORT_SEL_CTRL;
                 } T32smSysCtl_SM_PORT_SEL_CTRL;
    typedef union  T32smSysCtl_TSEN_ADC_RAW_DATA
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_ADC_RAW_DATA;
                 } T32smSysCtl_TSEN_ADC_RAW_DATA;
    typedef union  T32smSysCtl_TSEN_ADC_CLK_DIV
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_ADC_CLK_DIV;
                 } T32smSysCtl_TSEN_ADC_CLK_DIV;
    typedef union  T32smSysCtl_TSEN_ADC_CTRL
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_ADC_CTRL;
                 } T32smSysCtl_TSEN_ADC_CTRL;
    typedef union  T32smSysCtl_TSEN_ADC_DBG
          { UNSG32 u32;
            struct w32smSysCtl_TSEN_ADC_DBG;
                 } T32smSysCtl_TSEN_ADC_DBG;
    typedef union  T32smSysCtl_SM_DUMMY_REG
          { UNSG32 u32;
            struct w32smSysCtl_SM_DUMMY_REG;
                 } T32smSysCtl_SM_DUMMY_REG;
    typedef union  T32smSysCtl_smPinMuxCntlBus
          { UNSG32 u32;
            struct w32smSysCtl_smPinMuxCntlBus;
                 } T32smSysCtl_smPinMuxCntlBus;
    ///////////////////////////////////////////////////////////

    typedef union  TsmSysCtl_SM_ID
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_ID;
                   };
                 } TsmSysCtl_SM_ID;
    typedef union  TsmSysCtl_SM_CPU_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_CPU_CTRL;
                   };
                 } TsmSysCtl_SM_CPU_CTRL;
    typedef union  TsmSysCtl_SM_RST_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_RST_CTRL;
                   };
                 } TsmSysCtl_SM_RST_CTRL;
    typedef union  TsmSysCtl_SM_RST_STATUS
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_RST_STATUS;
                   };
                 } TsmSysCtl_SM_RST_STATUS;
    typedef union  TsmSysCtl_SM_STRP_STATUS
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_STRP_STATUS;
                   };
                 } TsmSysCtl_SM_STRP_STATUS;
    typedef union  TsmSysCtl_SM_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_CTRL;
                   };
                 } TsmSysCtl_SM_CTRL;
    typedef union  TsmSysCtl_SM_ADC_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_ADC_CTRL;
                   };
                 } TsmSysCtl_SM_ADC_CTRL;
    typedef union  TsmSysCtl_SM_ADC_STATUS
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_ADC_STATUS;
                   };
                 } TsmSysCtl_SM_ADC_STATUS;
    typedef union  TsmSysCtl_SM_ADC_DATA
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_ADC_DATA;
                   };
                 } TsmSysCtl_SM_ADC_DATA;
    typedef union  TsmSysCtl_TSEN_ADC_STATUS
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_ADC_STATUS;
                   };
                 } TsmSysCtl_TSEN_ADC_STATUS;
    typedef union  TsmSysCtl_TSEN_ADC_DATA
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_ADC_DATA;
                   };
                 } TsmSysCtl_TSEN_ADC_DATA;
    typedef union  TsmSysCtl_TSEN_CHK_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_CHK_CTRL;
                   };
                 } TsmSysCtl_TSEN_CHK_CTRL;
    typedef union  TsmSysCtl_TSEN_DATA_STATUS
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_DATA_STATUS;
                   };
                 } TsmSysCtl_TSEN_DATA_STATUS;
    typedef union  TsmSysCtl_SM_BOOT_STATUS
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_BOOT_STATUS;
                   };
                 } TsmSysCtl_SM_BOOT_STATUS;
    typedef union  TsmSysCtl_SM_LDO_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_LDO_CTRL;
                   };
                 } TsmSysCtl_SM_LDO_CTRL;
    typedef union  TsmSysCtl_SM_WDT_MASK
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_WDT_MASK;
                   };
                 } TsmSysCtl_SM_WDT_MASK;
    typedef union  TsmSysCtl_SM_CLK_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_CLK_CTRL;
                   };
                 } TsmSysCtl_SM_CLK_CTRL;
    typedef union  TsmSysCtl_smAnaGrpCtl
          { UNSG32 u32[2];
            struct {
            struct w32smSysCtl_smAnaGrpCtl;
            struct w32smSysCtl_smAnaGrpCtl1;
                   };
                 } TsmSysCtl_smAnaGrpCtl;
    typedef union  TsmSysCtl_SM_CORE_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_CORE_CTRL;
                   };
                 } TsmSysCtl_SM_CORE_CTRL;
    typedef union  TsmSysCtl_SM_TEST
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_TEST;
                   };
                 } TsmSysCtl_SM_TEST;
    typedef union  TsmSysCtl_SM_TEST_DATA0
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_TEST_DATA0;
                   };
                 } TsmSysCtl_SM_TEST_DATA0;
    typedef union  TsmSysCtl_SM_TEST_DATA1
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_TEST_DATA1;
                   };
                 } TsmSysCtl_SM_TEST_DATA1;
    typedef union  TsmSysCtl_SM_RWTC_CTRL_0
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_RWTC_CTRL_0;
                   };
                 } TsmSysCtl_SM_RWTC_CTRL_0;
    typedef union  TsmSysCtl_SM_RWTC_CTRL_1
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_RWTC_CTRL_1;
                   };
                 } TsmSysCtl_SM_RWTC_CTRL_1;
    typedef union  TsmSysCtl_SM_PORT_SEL_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_PORT_SEL_CTRL;
                   };
                 } TsmSysCtl_SM_PORT_SEL_CTRL;
    typedef union  TsmSysCtl_TSEN_ADC_RAW_DATA
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_ADC_RAW_DATA;
                   };
                 } TsmSysCtl_TSEN_ADC_RAW_DATA;
    typedef union  TsmSysCtl_TSEN_ADC_CLK_DIV
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_ADC_CLK_DIV;
                   };
                 } TsmSysCtl_TSEN_ADC_CLK_DIV;
    typedef union  TsmSysCtl_TSEN_ADC_CTRL
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_ADC_CTRL;
                   };
                 } TsmSysCtl_TSEN_ADC_CTRL;
    typedef union  TsmSysCtl_TSEN_ADC_DBG
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_TSEN_ADC_DBG;
                   };
                 } TsmSysCtl_TSEN_ADC_DBG;
    typedef union  TsmSysCtl_SM_DUMMY_REG
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_SM_DUMMY_REG;
                   };
                 } TsmSysCtl_SM_DUMMY_REG;
    typedef union  TsmSysCtl_smPinMuxCntlBus
          { UNSG32 u32[1];
            struct {
            struct w32smSysCtl_smPinMuxCntlBus;
                   };
                 } TsmSysCtl_smPinMuxCntlBus;

    ///////////////////////////////////////////////////////////
     SIGN32 smSysCtl_drvrd(SIE_smSysCtl *p, UNSG32 base, SIGN32 mem, SIGN32 tst);
     SIGN32 smSysCtl_drvwr(SIE_smSysCtl *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd);
       void smSysCtl_reset(SIE_smSysCtl *p);
     SIGN32 smSysCtl_cmp  (SIE_smSysCtl *p, SIE_smSysCtl *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst);
    #define smSysCtl_check(p,pie,pfx,hLOG) smSysCtl_cmp(p,pie,pfx,(void*)(hLOG),0,0)
    #define smSysCtl_print(p,    pfx,hLOG) smSysCtl_cmp(p,0,  pfx,(void*)(hLOG),0,0)

#endif
//////
/// ENDOFINTERFACE: smSysCtl
////////////////////////////////////////////////////////////



#ifdef __cplusplus
  }
#endif
#pragma  pack()

#endif
//////
/// ENDOFFILE: SysMgr.h
////////////////////////////////////////////////////////////

