//------------------------------------------------------------
// DONOT MODIFY THIS FILE
// generated by JISHENGJU automatically
//------------------------------------------------------------

#ifndef DWC_DDR_UMCTL2_C_STRUCT_H
#define DWC_DDR_UMCTL2_C_STRUCT_H

typedef union {
    struct {
        unsigned int Reserved_0_1 : 2; // [1:0]
        unsigned int lpddr2 : 1; // [2]
        unsigned int lpddr3 : 1; // [3]
        unsigned int Reserved_4_4 : 1; // [4]
        unsigned int lpddr4 : 1; // [5]
        unsigned int Reserved_6_9 : 4; // [9:6]
        unsigned int en_2t_timing_mode : 1; // [10]
        unsigned int Reserved_11_11 : 1; // [11]
        unsigned int data_bus_width : 2; // [13:12]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int burst_rdwr : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int active_ranks : 2; // [25:24]
        unsigned int Reserved_26_28 : 3; // [28:26]
        unsigned int frequency_mode : 1; // [29]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_MSTR_U;

typedef union {
    struct {
        unsigned int operating_mode : 3; // [2:0]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int selfref_type : 2; // [5:4]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int selfref_state : 2; // [9:8]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int selfref_cam_not_empty : 1; // [12]
        unsigned int Reserved_13_31 : 19; // [31:13]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_STAT_U;

typedef union {
    struct {
        unsigned int mr_type : 1; // [0]
        unsigned int Reserved_1_2 : 2; // [2:1]
        unsigned int sw_init_int : 1; // [3]
        unsigned int mr_rank : 2; // [5:4]
        unsigned int Reserved_6_11 : 6; // [11:6]
        unsigned int mr_addr : 4; // [15:12]
        unsigned int Reserved_16_30 : 15; // [30:16]
        unsigned int mr_wr : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_MRCTRL0_U;

typedef union {
    struct {
        unsigned int mr_data : 18; // [17:0]
        unsigned int Reserved_18_31 : 14; // [31:18]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_MRCTRL1_U;

typedef union {
    struct {
        unsigned int mr_wr_busy : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_MRSTAT_U;

typedef union {
    struct {
        unsigned int derate_enable : 1; // [0]
        unsigned int derate_value : 2; // [2:1]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int derate_byte : 4; // [7:4]
        unsigned int rc_derate_value : 3; // [10:8]
        unsigned int Reserved_11_11 : 1; // [11]
        unsigned int derate_mr4_tuf_dis : 1; // [12]
        unsigned int derate_mr4_pause_fc : 1; // [13]
        unsigned int Reserved_14_31 : 18; // [31:14]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATEEN_U;

typedef union {
    struct {
        unsigned int mr4_read_interval : 32; // [31:0]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATEINT_U;

typedef union {
    struct {
        unsigned int derate_temp_limit_intr_en : 1; // [0]
        unsigned int derate_temp_limit_intr_clr : 1; // [1]
        unsigned int derate_temp_limit_intr_force : 1; // [2]
        unsigned int Reserved_3_31 : 29; // [31:3]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATECTL_U;

typedef union {
    struct {
        unsigned int selfref_en : 1; // [0]
        unsigned int powerdown_en : 1; // [1]
        unsigned int deeppowerdown_en : 1; // [2]
        unsigned int en_dfi_dram_clk_disable : 1; // [3]
        unsigned int Reserved_4_4 : 1; // [4]
        unsigned int selfref_sw : 1; // [5]
        unsigned int stay_in_selfref : 1; // [6]
        unsigned int dis_cam_drain_selfref : 1; // [7]
        unsigned int lpddr4_sr_allowed : 1; // [8]
        unsigned int Reserved_9_31 : 23; // [31:9]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PWRCTL_U;

typedef union {
    struct {
        unsigned int powerdown_to_x32 : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int t_dpd_x4096 : 8; // [15:8]
        unsigned int selfref_to_x32 : 8; // [23:16]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PWRTMG_U;

typedef union {
    struct {
        unsigned int hw_lp_en : 1; // [0]
        unsigned int hw_lp_exit_idle_en : 1; // [1]
        unsigned int Reserved_2_15 : 14; // [15:2]
        unsigned int hw_lp_idle_x32 : 12; // [27:16]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_HWLPCTL_U;

typedef union {
    struct {
        unsigned int Reserved_0_1 : 2; // [1:0]
        unsigned int per_bank_refresh : 1; // [2]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int refresh_burst : 6; // [9:4]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int refresh_to_x1_x32 : 5; // [16:12]
        unsigned int Reserved_17_19 : 3; // [19:17]
        unsigned int refresh_margin : 4; // [23:20]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL0_U;

typedef union {
    struct {
        unsigned int refresh_timer0_start_value_x32 : 12; // [11:0]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int refresh_timer1_start_value_x32 : 12; // [27:16]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL1_U;

typedef union {
    struct {
        unsigned int dis_auto_refresh : 1; // [0]
        unsigned int refresh_update_level : 1; // [1]
        unsigned int Reserved_2_31 : 30; // [31:2]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL3_U;

typedef union {
    struct {
        unsigned int t_rfc_min : 10; // [9:0]
        unsigned int Reserved_10_14 : 5; // [14:10]
        unsigned int lpddr3_trefbw_en : 1; // [15]
        unsigned int t_rfc_nom_x1_x32 : 12; // [27:16]
        unsigned int Reserved_28_30 : 3; // [30:28]
        unsigned int t_rfc_nom_x1_sel : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG_U;

typedef union {
    struct {
        unsigned int Reserved_0_15 : 16; // [15:0]
        unsigned int t_pbr2pbr : 8; // [23:16]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG1_U;

typedef union {
    struct {
        unsigned int dfi_alert_err_int_en : 1; // [0]
        unsigned int dfi_alert_err_int_clr : 1; // [1]
        unsigned int dfi_alert_err_cnt_clr : 1; // [2]
        unsigned int Reserved_3_31 : 29; // [31:3]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_CRCPARCTL0_U;

typedef union {
    struct {
        unsigned int dfi_alert_err_cnt : 16; // [15:0]
        unsigned int dfi_alert_err_int : 1; // [16]
        unsigned int Reserved_17_31 : 15; // [31:17]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_CRCPARSTAT_U;

typedef union {
    struct {
        unsigned int pre_cke_x1024 : 12; // [11:0]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int post_cke_x1024 : 10; // [25:16]
        unsigned int Reserved_26_29 : 4; // [29:26]
        unsigned int skip_dram_init : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT0_U;

typedef union {
    struct {
        unsigned int pre_ocd_x32 : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int dram_rstn_x1024 : 9; // [24:16]
        unsigned int Reserved_25_31 : 7; // [31:25]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT1_U;

typedef union {
    struct {
        unsigned int Reserved_0_7 : 8; // [7:0]
        unsigned int idle_after_reset_x32 : 8; // [15:8]
        unsigned int Reserved_16_31 : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT2_U;

typedef union {
    struct {
        unsigned int emr : 16; // [15:0]
        unsigned int mr : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT3_U;

typedef union {
    struct {
        unsigned int emr3 : 16; // [15:0]
        unsigned int emr2 : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT4_U;

typedef union {
    struct {
        unsigned int max_auto_init_x1024 : 10; // [9:0]
        unsigned int Reserved_10_15 : 6; // [15:10]
        unsigned int dev_zqinit_x32 : 8; // [23:16]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT5_U;

typedef union {
    struct {
        unsigned int mr5 : 16; // [15:0]
        unsigned int mr4 : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT6_U;

typedef union {
    struct {
        unsigned int mr6 : 16; // [15:0]
        unsigned int mr22 : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT7_U;

typedef union {
    struct {
        unsigned int dimm_stagger_cs_en : 1; // [0]
        unsigned int dimm_addr_mirr_en : 1; // [1]
        unsigned int Reserved_2_31 : 30; // [31:2]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DIMMCTL_U;

typedef union {
    struct {
        unsigned int max_rank_rd : 4; // [3:0]
        unsigned int diff_rank_rd_gap : 4; // [7:4]
        unsigned int diff_rank_wr_gap : 4; // [11:8]
        unsigned int max_rank_wr : 4; // [15:12]
        unsigned int Reserved_16_23 : 8; // [23:16]
        unsigned int diff_rank_rd_gap_msb : 1; // [24]
        unsigned int Reserved_25_25 : 1; // [25]
        unsigned int diff_rank_wr_gap_msb : 1; // [26]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RANKCTL_U;

typedef union {
    struct {
        unsigned int wr2rd_dr : 6; // [5:0]
        unsigned int Reserved_6_31 : 26; // [31:6]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RANKCTL1_U;

typedef union {
    struct {
        unsigned int t_ras_min : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int t_ras_max : 7; // [14:8]
        unsigned int Reserved_15_15 : 1; // [15]
        unsigned int t_faw : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int wr2pre : 7; // [30:24]
        unsigned int Reserved_31_31 : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG0_U;

typedef union {
    struct {
        unsigned int t_rc : 7; // [6:0]
        unsigned int Reserved_7_7 : 1; // [7]
        unsigned int rd2pre : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int t_xp : 5; // [20:16]
        unsigned int Reserved_21_31 : 11; // [31:21]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG1_U;

typedef union {
    struct {
        unsigned int wr2rd : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int rd2wr : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int read_latency : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int write_latency : 6; // [29:24]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG2_U;

typedef union {
    struct {
        unsigned int Reserved_0_11 : 12; // [11:0]
        unsigned int t_mrd : 6; // [17:12]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int t_mrw : 10; // [29:20]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG3_U;

typedef union {
    struct {
        unsigned int t_rp : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int t_rrd : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int t_ccd : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int t_rcd : 5; // [28:24]
        unsigned int Reserved_29_31 : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG4_U;

typedef union {
    struct {
        unsigned int t_cke : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int t_ckesr : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int t_cksre : 7; // [22:16]
        unsigned int Reserved_23_23 : 1; // [23]
        unsigned int t_cksrx : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG5_U;

typedef union {
    struct {
        unsigned int t_ckcsx : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int t_ckdpdx : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int t_ckdpde : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG6_U;

typedef union {
    struct {
        unsigned int t_ckpdx : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int t_ckpde : 4; // [11:8]
        unsigned int Reserved_12_31 : 20; // [31:12]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG7_U;

typedef union {
    struct {
        unsigned int t_xs_x32 : 7; // [6:0]
        unsigned int Reserved_7_7 : 1; // [7]
        unsigned int t_xs_dll_x32 : 7; // [14:8]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG8_U;

typedef union {
    struct {
        unsigned int Reserved_0_15 : 16; // [15:0]
        unsigned int t_cmdcke : 2; // [17:16]
        unsigned int Reserved_18_31 : 14; // [31:18]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG12_U;

typedef union {
    struct {
        unsigned int t_ppd : 3; // [2:0]
        unsigned int Reserved_3_15 : 13; // [15:3]
        unsigned int t_ccd_mw : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int odtloff : 7; // [30:24]
        unsigned int Reserved_31_31 : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG13_U;

typedef union {
    struct {
        unsigned int t_xsr : 12; // [11:0]
        unsigned int Reserved_12_31 : 20; // [31:12]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG14_U;

typedef union {
    struct {
        unsigned int t_zq_short_nop : 10; // [9:0]
        unsigned int Reserved_10_15 : 6; // [15:10]
        unsigned int t_zq_long_nop : 11; // [26:16]
        unsigned int Reserved_27_28 : 2; // [28:27]
        unsigned int zq_resistor_shared : 1; // [29]
        unsigned int dis_srx_zqcl : 1; // [30]
        unsigned int dis_auto_zq : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ZQCTL0_U;

typedef union {
    struct {
        unsigned int t_zq_short_interval_x1024 : 20; // [19:0]
        unsigned int t_zq_reset_nop : 10; // [29:20]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ZQCTL1_U;

typedef union {
    struct {
        unsigned int zq_reset : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ZQCTL2_U;

typedef union {
    struct {
        unsigned int zq_reset_busy : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ZQSTAT_U;

typedef union {
    struct {
        unsigned int dfi_tphy_wrlat : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int dfi_tphy_wrdata : 6; // [13:8]
        unsigned int Reserved_14_14 : 1; // [14]
        unsigned int dfi_wrdata_use_dfi_phy_clk : 1; // [15]
        unsigned int dfi_t_rddata_en : 7; // [22:16]
        unsigned int dfi_rddata_use_dfi_phy_clk : 1; // [23]
        unsigned int dfi_t_ctrl_delay : 5; // [28:24]
        unsigned int Reserved_29_31 : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFITMG0_U;

typedef union {
    struct {
        unsigned int dfi_t_dram_clk_enable : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int dfi_t_dram_clk_disable : 5; // [12:8]
        unsigned int Reserved_13_15 : 3; // [15:13]
        unsigned int dfi_t_wrdata_delay : 5; // [20:16]
        unsigned int Reserved_21_31 : 11; // [31:21]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFITMG1_U;

typedef union {
    struct {
        unsigned int dfi_lp_en_pd : 1; // [0]
        unsigned int Reserved_1_3 : 3; // [3:1]
        unsigned int dfi_lp_wakeup_pd : 4; // [7:4]
        unsigned int dfi_lp_en_sr : 1; // [8]
        unsigned int Reserved_9_11 : 3; // [11:9]
        unsigned int dfi_lp_wakeup_sr : 4; // [15:12]
        unsigned int dfi_lp_en_dpd : 1; // [16]
        unsigned int Reserved_17_19 : 3; // [19:17]
        unsigned int dfi_lp_wakeup_dpd : 4; // [23:20]
        unsigned int dfi_tlp_resp : 5; // [28:24]
        unsigned int Reserved_29_31 : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFILPCFG0_U;

typedef union {
    struct {
        unsigned int dfi_t_ctrlup_min : 10; // [9:0]
        unsigned int Reserved_10_15 : 6; // [15:10]
        unsigned int dfi_t_ctrlup_max : 10; // [25:16]
        unsigned int Reserved_26_28 : 3; // [28:26]
        unsigned int ctrlupd_pre_srx : 1; // [29]
        unsigned int dis_auto_ctrlupd_srx : 1; // [30]
        unsigned int dis_auto_ctrlupd : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFIUPD0_U;

typedef union {
    struct {
        unsigned int dfi_t_ctrlupd_interval_max_x1024 : 8; // [7:0]
        unsigned int Reserved_8_15 : 8; // [15:8]
        unsigned int dfi_t_ctrlupd_interval_min_x1024 : 8; // [23:16]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFIUPD1_U;

typedef union {
    struct {
        unsigned int Reserved_0_30 : 31; // [30:0]
        unsigned int dfi_phyupd_en : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFIUPD2_U;

typedef union {
    struct {
        unsigned int dfi_init_complete_en : 1; // [0]
        unsigned int phy_dbi_mode : 1; // [1]
        unsigned int dfi_data_cs_polarity : 1; // [2]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int ctl_idle_en : 1; // [4]
        unsigned int dfi_init_start : 1; // [5]
        unsigned int Reserved_6_6 : 1; // [6]
        unsigned int lp_optimized_write : 1; // [7]
        unsigned int dfi_frequency : 5; // [12:8]
        unsigned int Reserved_13_31 : 19; // [31:13]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFIMISC_U;

typedef union {
    struct {
        unsigned int dfi_tphy_wrcslat : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int dfi_tphy_rdcslat : 7; // [14:8]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFITMG2_U;

typedef union {
    struct {
        unsigned int dfi_init_complete : 1; // [0]
        unsigned int dfi_lp_ack : 1; // [1]
        unsigned int Reserved_2_31 : 30; // [31:2]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFISTAT_U;

typedef union {
    struct {
        unsigned int dm_en : 1; // [0]
        unsigned int wr_dbi_en : 1; // [1]
        unsigned int rd_dbi_en : 1; // [2]
        unsigned int Reserved_3_31 : 29; // [31:3]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBICTL_U;

typedef union {
    struct {
        unsigned int dfi_phymstr_en : 1; // [0]
        unsigned int Reserved_1_23 : 23; // [23:1]
        unsigned int dfi_phymstr_blk_ref_x32 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFIPHYMSTR_U;

typedef union {
    struct {
        unsigned int addrmap_cs_bit0 : 5; // [4:0]
        unsigned int Reserved_5_15 : 11; // [15:5]
        unsigned int addrmap_dch_bit0 : 5; // [20:16]
        unsigned int Reserved_21_31 : 11; // [31:21]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP0_U;

typedef union {
    struct {
        unsigned int addrmap_bank_b0 : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int addrmap_bank_b1 : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int addrmap_bank_b2 : 6; // [21:16]
        unsigned int Reserved_22_31 : 10; // [31:22]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP1_U;

typedef union {
    struct {
        unsigned int addrmap_col_b2 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int addrmap_col_b3 : 5; // [12:8]
        unsigned int Reserved_13_15 : 3; // [15:13]
        unsigned int addrmap_col_b4 : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int addrmap_col_b5 : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP2_U;

typedef union {
    struct {
        unsigned int addrmap_col_b6 : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int addrmap_col_b7 : 5; // [12:8]
        unsigned int Reserved_13_15 : 3; // [15:13]
        unsigned int addrmap_col_b8 : 5; // [20:16]
        unsigned int Reserved_21_23 : 3; // [23:21]
        unsigned int addrmap_col_b9 : 5; // [28:24]
        unsigned int Reserved_29_31 : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP3_U;

typedef union {
    struct {
        unsigned int addrmap_col_b10 : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int addrmap_col_b11 : 5; // [12:8]
        unsigned int Reserved_13_31 : 19; // [31:13]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP4_U;

typedef union {
    struct {
        unsigned int addrmap_row_b0 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int addrmap_row_b1 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int addrmap_row_b2_10 : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int addrmap_row_b11 : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP5_U;

typedef union {
    struct {
        unsigned int addrmap_row_b12 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int addrmap_row_b13 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int addrmap_row_b14 : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int addrmap_row_b15 : 4; // [27:24]
        unsigned int Reserved_28_28 : 1; // [28]
        unsigned int lpddr34_3gb_6gb_12gb : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP6_U;

typedef union {
    struct {
        unsigned int addrmap_row_b16 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int addrmap_row_b17 : 4; // [11:8]
        unsigned int Reserved_12_31 : 20; // [31:12]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP7_U;

typedef union {
    struct {
        unsigned int addrmap_row_b2 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int addrmap_row_b3 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int addrmap_row_b4 : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int addrmap_row_b5 : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP9_U;

typedef union {
    struct {
        unsigned int addrmap_row_b6 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int addrmap_row_b7 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int addrmap_row_b8 : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int addrmap_row_b9 : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP10_U;

typedef union {
    struct {
        unsigned int addrmap_row_b10 : 4; // [3:0]
        unsigned int Reserved_4_31 : 28; // [31:4]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP11_U;

typedef union {
    struct {
        unsigned int Reserved_0_1 : 2; // [1:0]
        unsigned int rd_odt_delay : 5; // [6:2]
        unsigned int Reserved_7_7 : 1; // [7]
        unsigned int rd_odt_hold : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int wr_odt_delay : 5; // [20:16]
        unsigned int Reserved_21_23 : 3; // [23:21]
        unsigned int wr_odt_hold : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ODTCFG_U;

typedef union {
    struct {
        unsigned int rank0_wr_odt : 2; // [1:0]
        unsigned int Reserved_2_3 : 2; // [3:2]
        unsigned int rank0_rd_odt : 2; // [5:4]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int rank1_wr_odt : 2; // [9:8]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int rank1_rd_odt : 2; // [13:12]
        unsigned int Reserved_14_31 : 18; // [31:14]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ODTMAP_U;

typedef union {
    struct {
        unsigned int Reserved_0_0 : 1; // [0]
        unsigned int prefer_write : 1; // [1]
        unsigned int pageclose : 1; // [2]
        unsigned int rdwr_switch_policy_sel : 1; // [3]
        unsigned int opt_wrcam_fill_level : 1; // [4]
        unsigned int dis_opt_ntt_by_act : 1; // [5]
        unsigned int dis_opt_ntt_by_pre : 1; // [6]
        unsigned int autopre_rmw : 1; // [7]
        unsigned int lpr_num_entries : 5; // [12:8]
        unsigned int Reserved_13_14 : 2; // [14:13]
        unsigned int lpddr4_opt_act_timing : 1; // [15]
        unsigned int go2critical_hysteresis : 8; // [23:16]
        unsigned int rdwr_idle_gap : 7; // [30:24]
        unsigned int opt_vprw_sch : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_SCHED_U;

typedef union {
    struct {
        unsigned int pageclose_timer : 8; // [7:0]
        unsigned int Reserved_8_11 : 4; // [11:8]
        unsigned int delay_switch_write : 4; // [15:12]
        unsigned int visible_window_limit_wr : 3; // [18:16]
        unsigned int Reserved_19_19 : 1; // [19]
        unsigned int visible_window_limit_rd : 3; // [22:20]
        unsigned int Reserved_23_23 : 1; // [23]
        unsigned int page_hit_limit_wr : 3; // [26:24]
        unsigned int Reserved_27_27 : 1; // [27]
        unsigned int page_hit_limit_rd : 3; // [30:28]
        unsigned int opt_hit_gt_hpr : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_SCHED1_U;

typedef union {
    struct {
        unsigned int hpr_max_starve : 16; // [15:0]
        unsigned int Reserved_16_23 : 8; // [23:16]
        unsigned int hpr_xact_run_length : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PERFHPR1_U;

typedef union {
    struct {
        unsigned int lpr_max_starve : 16; // [15:0]
        unsigned int Reserved_16_23 : 8; // [23:16]
        unsigned int lpr_xact_run_length : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PERFLPR1_U;

typedef union {
    struct {
        unsigned int w_max_starve : 16; // [15:0]
        unsigned int Reserved_16_23 : 8; // [23:16]
        unsigned int w_xact_run_length : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PERFWR1_U;

typedef union {
    struct {
        unsigned int wrcam_lowthresh : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int wrcam_highthresh : 5; // [12:8]
        unsigned int Reserved_13_15 : 3; // [15:13]
        unsigned int wr_pghit_num_thresh : 5; // [20:16]
        unsigned int Reserved_21_23 : 3; // [23:21]
        unsigned int rd_pghit_num_thresh : 5; // [28:24]
        unsigned int Reserved_29_31 : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_SCHED3_U;

typedef union {
    struct {
        unsigned int rd_act_idle_gap : 8; // [7:0]
        unsigned int wr_act_idle_gap : 8; // [15:8]
        unsigned int rd_page_exp_cycles : 8; // [23:16]
        unsigned int wr_page_exp_cycles : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_SCHED4_U;

typedef union {
    struct {
        unsigned int dis_wc : 1; // [0]
        unsigned int dis_rd_bypass : 1; // [1]
        unsigned int dis_act_bypass : 1; // [2]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int dis_collision_page_opt : 1; // [4]
        unsigned int Reserved_5_5 : 1; // [5]
        unsigned int dis_max_rank_rd_opt : 1; // [6]
        unsigned int dis_max_rank_wr_opt : 1; // [7]
        unsigned int Reserved_8_31 : 24; // [31:8]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBG0_U;

typedef union {
    struct {
        unsigned int dis_dq : 1; // [0]
        unsigned int dis_hif : 1; // [1]
        unsigned int Reserved_2_31 : 30; // [31:2]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBG1_U;

typedef union {
    struct {
        unsigned int dbg_hpr_q_depth : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int dbg_lpr_q_depth : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int dbg_w_q_depth : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int dbg_stall : 1; // [24]
        unsigned int dbg_rd_q_empty : 1; // [25]
        unsigned int dbg_wr_q_empty : 1; // [26]
        unsigned int Reserved_27_27 : 1; // [27]
        unsigned int rd_data_pipeline_empty : 1; // [28]
        unsigned int wr_data_pipeline_empty : 1; // [29]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBGCAM_U;

typedef union {
    struct {
        unsigned int rank0_refresh : 1; // [0]
        unsigned int rank1_refresh : 1; // [1]
        unsigned int Reserved_2_3 : 2; // [3:2]
        unsigned int zq_calib_short : 1; // [4]
        unsigned int ctrlupd : 1; // [5]
        unsigned int Reserved_6_31 : 26; // [31:6]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBGCMD_U;

typedef union {
    struct {
        unsigned int rank0_refresh_busy : 1; // [0]
        unsigned int rank1_refresh_busy : 1; // [1]
        unsigned int Reserved_2_3 : 2; // [3:2]
        unsigned int zq_calib_short_busy : 1; // [4]
        unsigned int ctrlupd_busy : 1; // [5]
        unsigned int Reserved_6_31 : 26; // [31:6]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBGSTAT_U;

typedef union {
    struct {
        unsigned int sw_done : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_SWCTL_U;

typedef union {
    struct {
        unsigned int sw_done_ack : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_SWSTAT_U;

typedef union {
    struct {
        unsigned int sw_static_unlock : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_SWCTLSTATIC_U;

typedef union {
    struct {
        unsigned int wr_poison_slverr_en : 1; // [0]
        unsigned int Reserved_1_3 : 3; // [3:1]
        unsigned int wr_poison_intr_en : 1; // [4]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int wr_poison_intr_clr : 1; // [8]
        unsigned int Reserved_9_15 : 7; // [15:9]
        unsigned int rd_poison_slverr_en : 1; // [16]
        unsigned int Reserved_17_19 : 3; // [19:17]
        unsigned int rd_poison_intr_en : 1; // [20]
        unsigned int Reserved_21_23 : 3; // [23:21]
        unsigned int rd_poison_intr_clr : 1; // [24]
        unsigned int Reserved_25_31 : 7; // [31:25]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_POISONCFG_U;

typedef union {
    struct {
        unsigned int wr_poison_intr_0 : 1; // [0]
        unsigned int wr_poison_intr_1 : 1; // [1]
        unsigned int wr_poison_intr_2 : 1; // [2]
        unsigned int wr_poison_intr_3 : 1; // [3]
        unsigned int wr_poison_intr_4 : 1; // [4]
        unsigned int Reserved_5_15 : 11; // [15:5]
        unsigned int rd_poison_intr_0 : 1; // [16]
        unsigned int rd_poison_intr_1 : 1; // [17]
        unsigned int rd_poison_intr_2 : 1; // [18]
        unsigned int rd_poison_intr_3 : 1; // [19]
        unsigned int rd_poison_intr_4 : 1; // [20]
        unsigned int Reserved_21_31 : 11; // [31:21]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_POISONSTAT_U;

typedef union {
    struct {
        unsigned int derate_temp_limit_intr : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATESTAT_U;

typedef union {
    struct {
        unsigned int rd_port_busy_0 : 1; // [0]
        unsigned int rd_port_busy_1 : 1; // [1]
        unsigned int rd_port_busy_2 : 1; // [2]
        unsigned int rd_port_busy_3 : 1; // [3]
        unsigned int rd_port_busy_4 : 1; // [4]
        unsigned int Reserved_5_15 : 11; // [15:5]
        unsigned int wr_port_busy_0 : 1; // [16]
        unsigned int wr_port_busy_1 : 1; // [17]
        unsigned int wr_port_busy_2 : 1; // [18]
        unsigned int wr_port_busy_3 : 1; // [19]
        unsigned int wr_port_busy_4 : 1; // [20]
        unsigned int Reserved_21_31 : 11; // [31:21]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PSTAT_U;

typedef union {
    struct {
        unsigned int go2critical_en : 1; // [0]
        unsigned int Reserved_1_3 : 3; // [3:1]
        unsigned int pagematch_limit : 1; // [4]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int bl_exp_mode : 1; // [8]
        unsigned int Reserved_9_31 : 23; // [31:9]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCCFG_U;

typedef union {
    struct {
        unsigned int rd_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int rd_port_aging_en : 1; // [12]
        unsigned int rd_port_urgent_en : 1; // [13]
        unsigned int rd_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGR_0_U;

typedef union {
    struct {
        unsigned int wr_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int wr_port_aging_en : 1; // [12]
        unsigned int wr_port_urgent_en : 1; // [13]
        unsigned int wr_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGW_0_U;

typedef union {
    struct {
        unsigned int port_en : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCTRL_0_U;

typedef union {
    struct {
        unsigned int rqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int rqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int rqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_31 : 10; // [31:22]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_0_U;

typedef union {
    struct {
        unsigned int rqos_map_timeoutb : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int rqos_map_timeoutr : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_0_U;

typedef union {
    struct {
        unsigned int wqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int wqos_map_level2 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int wqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int wqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int wqos_map_region2 : 2; // [25:24]
        unsigned int Reserved_26_31 : 6; // [31:26]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_0_U;

typedef union {
    struct {
        unsigned int wqos_map_timeout1 : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int wqos_map_timeout2 : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_0_U;

typedef union {
    struct {
        unsigned int rd_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int rd_port_aging_en : 1; // [12]
        unsigned int rd_port_urgent_en : 1; // [13]
        unsigned int rd_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGR_1_U;

typedef union {
    struct {
        unsigned int wr_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int wr_port_aging_en : 1; // [12]
        unsigned int wr_port_urgent_en : 1; // [13]
        unsigned int wr_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGW_1_U;

typedef union {
    struct {
        unsigned int port_en : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCTRL_1_U;

typedef union {
    struct {
        unsigned int rqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int rqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int rqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_31 : 10; // [31:22]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_1_U;

typedef union {
    struct {
        unsigned int rqos_map_timeoutb : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int rqos_map_timeoutr : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_1_U;

typedef union {
    struct {
        unsigned int wqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int wqos_map_level2 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int wqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int wqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int wqos_map_region2 : 2; // [25:24]
        unsigned int Reserved_26_31 : 6; // [31:26]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_1_U;

typedef union {
    struct {
        unsigned int wqos_map_timeout1 : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int wqos_map_timeout2 : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_1_U;

typedef union {
    struct {
        unsigned int rd_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int rd_port_aging_en : 1; // [12]
        unsigned int rd_port_urgent_en : 1; // [13]
        unsigned int rd_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGR_2_U;

typedef union {
    struct {
        unsigned int wr_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int wr_port_aging_en : 1; // [12]
        unsigned int wr_port_urgent_en : 1; // [13]
        unsigned int wr_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGW_2_U;

typedef union {
    struct {
        unsigned int port_en : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCTRL_2_U;

typedef union {
    struct {
        unsigned int rqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int rqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int rqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_31 : 10; // [31:22]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_2_U;

typedef union {
    struct {
        unsigned int rqos_map_timeoutb : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int rqos_map_timeoutr : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_2_U;

typedef union {
    struct {
        unsigned int wqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int wqos_map_level2 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int wqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int wqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int wqos_map_region2 : 2; // [25:24]
        unsigned int Reserved_26_31 : 6; // [31:26]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_2_U;

typedef union {
    struct {
        unsigned int wqos_map_timeout1 : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int wqos_map_timeout2 : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_2_U;

typedef union {
    struct {
        unsigned int rd_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int rd_port_aging_en : 1; // [12]
        unsigned int rd_port_urgent_en : 1; // [13]
        unsigned int rd_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGR_3_U;

typedef union {
    struct {
        unsigned int wr_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int wr_port_aging_en : 1; // [12]
        unsigned int wr_port_urgent_en : 1; // [13]
        unsigned int wr_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGW_3_U;

typedef union {
    struct {
        unsigned int port_en : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCTRL_3_U;

typedef union {
    struct {
        unsigned int rqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int rqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int rqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_31 : 10; // [31:22]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_3_U;

typedef union {
    struct {
        unsigned int rqos_map_timeoutb : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int rqos_map_timeoutr : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_3_U;

typedef union {
    struct {
        unsigned int wqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int wqos_map_level2 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int wqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int wqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int wqos_map_region2 : 2; // [25:24]
        unsigned int Reserved_26_31 : 6; // [31:26]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_3_U;

typedef union {
    struct {
        unsigned int wqos_map_timeout1 : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int wqos_map_timeout2 : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_3_U;

typedef union {
    struct {
        unsigned int rd_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int rd_port_aging_en : 1; // [12]
        unsigned int rd_port_urgent_en : 1; // [13]
        unsigned int rd_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGR_4_U;

typedef union {
    struct {
        unsigned int wr_port_priority : 10; // [9:0]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int wr_port_aging_en : 1; // [12]
        unsigned int wr_port_urgent_en : 1; // [13]
        unsigned int wr_port_pagematch_en : 1; // [14]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGW_4_U;

typedef union {
    struct {
        unsigned int port_en : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCTRL_4_U;

typedef union {
    struct {
        unsigned int rqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int rqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int rqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_31 : 10; // [31:22]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_4_U;

typedef union {
    struct {
        unsigned int rqos_map_timeoutb : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int rqos_map_timeoutr : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_4_U;

typedef union {
    struct {
        unsigned int wqos_map_level1 : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int wqos_map_level2 : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int wqos_map_region0 : 2; // [17:16]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int wqos_map_region1 : 2; // [21:20]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int wqos_map_region2 : 2; // [25:24]
        unsigned int Reserved_26_31 : 6; // [31:26]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_4_U;

typedef union {
    struct {
        unsigned int wqos_map_timeout1 : 11; // [10:0]
        unsigned int Reserved_11_15 : 5; // [15:11]
        unsigned int wqos_map_timeout2 : 11; // [26:16]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_4_U;

typedef union {
    struct {
        unsigned int ver_number : 32; // [31:0]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_UMCTL2_VER_NUMBER_U;

typedef union {
    struct {
        unsigned int ver_type : 32; // [31:0]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_UMCTL2_VER_TYPE_U;

typedef union {
    struct {
        unsigned int operating_mode : 3; // [2:0]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int selfref_type : 2; // [5:4]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int selfref_state : 2; // [9:8]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int selfref_cam_not_empty : 1; // [12]
        unsigned int Reserved_13_31 : 19; // [31:13]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_STAT_DCH1_U;

typedef union {
    struct {
        unsigned int mr_type : 1; // [0]
        unsigned int Reserved_1_2 : 2; // [2:1]
        unsigned int sw_init_int : 1; // [3]
        unsigned int mr_rank : 2; // [5:4]
        unsigned int Reserved_6_11 : 6; // [11:6]
        unsigned int mr_addr : 4; // [15:12]
        unsigned int Reserved_16_30 : 15; // [30:16]
        unsigned int mr_wr : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_MRCTRL0_DCH1_U;

typedef union {
    struct {
        unsigned int mr_data : 18; // [17:0]
        unsigned int Reserved_18_31 : 14; // [31:18]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_MRCTRL1_DCH1_U;

typedef union {
    struct {
        unsigned int mr_wr_busy : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_MRSTAT_DCH1_U;

typedef union {
    struct {
        unsigned int derate_temp_limit_intr_en : 1; // [0]
        unsigned int derate_temp_limit_intr_clr : 1; // [1]
        unsigned int derate_temp_limit_intr_force : 1; // [2]
        unsigned int Reserved_3_31 : 29; // [31:3]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATECTL_DCH1_U;

typedef union {
    struct {
        unsigned int selfref_en : 1; // [0]
        unsigned int powerdown_en : 1; // [1]
        unsigned int deeppowerdown_en : 1; // [2]
        unsigned int en_dfi_dram_clk_disable : 1; // [3]
        unsigned int Reserved_4_4 : 1; // [4]
        unsigned int selfref_sw : 1; // [5]
        unsigned int stay_in_selfref : 1; // [6]
        unsigned int dis_cam_drain_selfref : 1; // [7]
        unsigned int lpddr4_sr_allowed : 1; // [8]
        unsigned int Reserved_9_31 : 23; // [31:9]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PWRCTL_DCH1_U;

typedef union {
    struct {
        unsigned int hw_lp_en : 1; // [0]
        unsigned int hw_lp_exit_idle_en : 1; // [1]
        unsigned int Reserved_2_15 : 14; // [15:2]
        unsigned int hw_lp_idle_x32 : 12; // [27:16]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_HWLPCTL_DCH1_U;

typedef union {
    struct {
        unsigned int dfi_alert_err_int_en : 1; // [0]
        unsigned int dfi_alert_err_int_clr : 1; // [1]
        unsigned int dfi_alert_err_cnt_clr : 1; // [2]
        unsigned int Reserved_3_31 : 29; // [31:3]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_CRCPARCTL0_DCH1_U;

typedef union {
    struct {
        unsigned int dfi_alert_err_cnt : 16; // [15:0]
        unsigned int dfi_alert_err_int : 1; // [16]
        unsigned int Reserved_17_31 : 15; // [31:17]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_CRCPARSTAT_DCH1_U;

typedef union {
    struct {
        unsigned int zq_reset : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ZQCTL2_DCH1_U;

typedef union {
    struct {
        unsigned int zq_reset_busy : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ZQSTAT_DCH1_U;

typedef union {
    struct {
        unsigned int dfi_init_complete : 1; // [0]
        unsigned int dfi_lp_ack : 1; // [1]
        unsigned int Reserved_2_31 : 30; // [31:2]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFISTAT_DCH1_U;

typedef union {
    struct {
        unsigned int rank0_wr_odt : 2; // [1:0]
        unsigned int Reserved_2_3 : 2; // [3:2]
        unsigned int rank0_rd_odt : 2; // [5:4]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int rank1_wr_odt : 2; // [9:8]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int rank1_rd_odt : 2; // [13:12]
        unsigned int Reserved_14_31 : 18; // [31:14]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ODTMAP_DCH1_U;

typedef union {
    struct {
        unsigned int dis_dq : 1; // [0]
        unsigned int dis_hif : 1; // [1]
        unsigned int Reserved_2_31 : 30; // [31:2]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBG1_DCH1_U;

typedef union {
    struct {
        unsigned int dbg_hpr_q_depth : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int dbg_lpr_q_depth : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int dbg_w_q_depth : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int dbg_stall : 1; // [24]
        unsigned int dbg_rd_q_empty : 1; // [25]
        unsigned int dbg_wr_q_empty : 1; // [26]
        unsigned int Reserved_27_27 : 1; // [27]
        unsigned int rd_data_pipeline_empty : 1; // [28]
        unsigned int wr_data_pipeline_empty : 1; // [29]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBGCAM_DCH1_U;

typedef union {
    struct {
        unsigned int rank0_refresh : 1; // [0]
        unsigned int rank1_refresh : 1; // [1]
        unsigned int Reserved_2_3 : 2; // [3:2]
        unsigned int zq_calib_short : 1; // [4]
        unsigned int ctrlupd : 1; // [5]
        unsigned int Reserved_6_31 : 26; // [31:6]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBGCMD_DCH1_U;

typedef union {
    struct {
        unsigned int rank0_refresh_busy : 1; // [0]
        unsigned int rank1_refresh_busy : 1; // [1]
        unsigned int Reserved_2_3 : 2; // [3:2]
        unsigned int zq_calib_short_busy : 1; // [4]
        unsigned int ctrlupd_busy : 1; // [5]
        unsigned int Reserved_6_31 : 26; // [31:6]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DBGSTAT_DCH1_U;

typedef union {
    struct {
        unsigned int derate_temp_limit_intr : 1; // [0]
        unsigned int Reserved_1_31 : 31; // [31:1]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATESTAT_DCH1_U;

typedef union {
    struct {
        unsigned int derate_enable : 1; // [0]
        unsigned int derate_value : 2; // [2:1]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int derate_byte : 4; // [7:4]
        unsigned int rc_derate_value : 3; // [10:8]
        unsigned int Reserved_11_11 : 1; // [11]
        unsigned int derate_mr4_tuf_dis : 1; // [12]
        unsigned int derate_mr4_pause_fc : 1; // [13]
        unsigned int Reserved_14_31 : 18; // [31:14]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATEEN_FREQ1_U;

typedef union {
    struct {
        unsigned int mr4_read_interval : 32; // [31:0]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DERATEINT_FREQ1_U;

typedef union {
    struct {
        unsigned int powerdown_to_x32 : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int t_dpd_x4096 : 8; // [15:8]
        unsigned int selfref_to_x32 : 8; // [23:16]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_PWRTMG_FREQ1_U;

typedef union {
    struct {
        unsigned int Reserved_0_1 : 2; // [1:0]
        unsigned int per_bank_refresh : 1; // [2]
        unsigned int Reserved_3_3 : 1; // [3]
        unsigned int refresh_burst : 6; // [9:4]
        unsigned int Reserved_10_11 : 2; // [11:10]
        unsigned int refresh_to_x1_x32 : 5; // [16:12]
        unsigned int Reserved_17_19 : 3; // [19:17]
        unsigned int refresh_margin : 4; // [23:20]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL0_FREQ1_U;

typedef union {
    struct {
        unsigned int t_rfc_min : 10; // [9:0]
        unsigned int Reserved_10_14 : 5; // [14:10]
        unsigned int lpddr3_trefbw_en : 1; // [15]
        unsigned int t_rfc_nom_x1_x32 : 12; // [27:16]
        unsigned int Reserved_28_30 : 3; // [30:28]
        unsigned int t_rfc_nom_x1_sel : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG_FREQ1_U;

typedef union {
    struct {
        unsigned int Reserved_0_15 : 16; // [15:0]
        unsigned int t_pbr2pbr : 8; // [23:16]
        unsigned int Reserved_24_31 : 8; // [31:24]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG1_FREQ1_U;

typedef union {
    struct {
        unsigned int emr : 16; // [15:0]
        unsigned int mr : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT3_FREQ1_U;

typedef union {
    struct {
        unsigned int emr3 : 16; // [15:0]
        unsigned int emr2 : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT4_FREQ1_U;

typedef union {
    struct {
        unsigned int mr5 : 16; // [15:0]
        unsigned int mr4 : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT6_FREQ1_U;

typedef union {
    struct {
        unsigned int mr6 : 16; // [15:0]
        unsigned int mr22 : 16; // [31:16]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_INIT7_FREQ1_U;

typedef union {
    struct {
        unsigned int max_rank_rd : 4; // [3:0]
        unsigned int diff_rank_rd_gap : 4; // [7:4]
        unsigned int diff_rank_wr_gap : 4; // [11:8]
        unsigned int max_rank_wr : 4; // [15:12]
        unsigned int Reserved_16_23 : 8; // [23:16]
        unsigned int diff_rank_rd_gap_msb : 1; // [24]
        unsigned int Reserved_25_25 : 1; // [25]
        unsigned int diff_rank_wr_gap_msb : 1; // [26]
        unsigned int Reserved_27_31 : 5; // [31:27]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RANKCTL_FREQ1_U;

typedef union {
    struct {
        unsigned int wr2rd_dr : 6; // [5:0]
        unsigned int Reserved_6_31 : 26; // [31:6]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_RANKCTL1_FREQ1_U;

typedef union {
    struct {
        unsigned int t_ras_min : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int t_ras_max : 7; // [14:8]
        unsigned int Reserved_15_15 : 1; // [15]
        unsigned int t_faw : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int wr2pre : 7; // [30:24]
        unsigned int Reserved_31_31 : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG0_FREQ1_U;

typedef union {
    struct {
        unsigned int t_rc : 7; // [6:0]
        unsigned int Reserved_7_7 : 1; // [7]
        unsigned int rd2pre : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int t_xp : 5; // [20:16]
        unsigned int Reserved_21_31 : 11; // [31:21]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG1_FREQ1_U;

typedef union {
    struct {
        unsigned int wr2rd : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int rd2wr : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int read_latency : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int write_latency : 6; // [29:24]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG2_FREQ1_U;

typedef union {
    struct {
        unsigned int Reserved_0_11 : 12; // [11:0]
        unsigned int t_mrd : 6; // [17:12]
        unsigned int Reserved_18_19 : 2; // [19:18]
        unsigned int t_mrw : 10; // [29:20]
        unsigned int Reserved_30_31 : 2; // [31:30]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG3_FREQ1_U;

typedef union {
    struct {
        unsigned int t_rp : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int t_rrd : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int t_ccd : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int t_rcd : 5; // [28:24]
        unsigned int Reserved_29_31 : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG4_FREQ1_U;

typedef union {
    struct {
        unsigned int t_cke : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int t_ckesr : 6; // [13:8]
        unsigned int Reserved_14_15 : 2; // [15:14]
        unsigned int t_cksre : 7; // [22:16]
        unsigned int Reserved_23_23 : 1; // [23]
        unsigned int t_cksrx : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG5_FREQ1_U;

typedef union {
    struct {
        unsigned int t_ckcsx : 4; // [3:0]
        unsigned int Reserved_4_15 : 12; // [15:4]
        unsigned int t_ckdpdx : 4; // [19:16]
        unsigned int Reserved_20_23 : 4; // [23:20]
        unsigned int t_ckdpde : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG6_FREQ1_U;

typedef union {
    struct {
        unsigned int t_ckpdx : 4; // [3:0]
        unsigned int Reserved_4_7 : 4; // [7:4]
        unsigned int t_ckpde : 4; // [11:8]
        unsigned int Reserved_12_31 : 20; // [31:12]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG7_FREQ1_U;

typedef union {
    struct {
        unsigned int t_xs_x32 : 7; // [6:0]
        unsigned int Reserved_7_7 : 1; // [7]
        unsigned int t_xs_dll_x32 : 7; // [14:8]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG8_FREQ1_U;

typedef union {
    struct {
        unsigned int Reserved_0_15 : 16; // [15:0]
        unsigned int t_cmdcke : 2; // [17:16]
        unsigned int Reserved_18_31 : 14; // [31:18]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG12_FREQ1_U;

typedef union {
    struct {
        unsigned int t_ppd : 3; // [2:0]
        unsigned int Reserved_3_15 : 13; // [15:3]
        unsigned int t_ccd_mw : 6; // [21:16]
        unsigned int Reserved_22_23 : 2; // [23:22]
        unsigned int odtloff : 7; // [30:24]
        unsigned int Reserved_31_31 : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG13_FREQ1_U;

typedef union {
    struct {
        unsigned int t_xsr : 12; // [11:0]
        unsigned int Reserved_12_31 : 20; // [31:12]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG14_FREQ1_U;

typedef union {
    struct {
        unsigned int t_zq_short_nop : 10; // [9:0]
        unsigned int Reserved_10_15 : 6; // [15:10]
        unsigned int t_zq_long_nop : 11; // [26:16]
        unsigned int Reserved_27_28 : 2; // [28:27]
        unsigned int zq_resistor_shared : 1; // [29]
        unsigned int dis_srx_zqcl : 1; // [30]
        unsigned int dis_auto_zq : 1; // [31]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ZQCTL0_FREQ1_U;

typedef union {
    struct {
        unsigned int dfi_tphy_wrlat : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int dfi_tphy_wrdata : 6; // [13:8]
        unsigned int Reserved_14_14 : 1; // [14]
        unsigned int dfi_wrdata_use_dfi_phy_clk : 1; // [15]
        unsigned int dfi_t_rddata_en : 7; // [22:16]
        unsigned int dfi_rddata_use_dfi_phy_clk : 1; // [23]
        unsigned int dfi_t_ctrl_delay : 5; // [28:24]
        unsigned int Reserved_29_31 : 3; // [31:29]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFITMG0_FREQ1_U;

typedef union {
    struct {
        unsigned int dfi_t_dram_clk_enable : 5; // [4:0]
        unsigned int Reserved_5_7 : 3; // [7:5]
        unsigned int dfi_t_dram_clk_disable : 5; // [12:8]
        unsigned int Reserved_13_15 : 3; // [15:13]
        unsigned int dfi_t_wrdata_delay : 5; // [20:16]
        unsigned int Reserved_21_31 : 11; // [31:21]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFITMG1_FREQ1_U;

typedef union {
    struct {
        unsigned int dfi_tphy_wrcslat : 6; // [5:0]
        unsigned int Reserved_6_7 : 2; // [7:6]
        unsigned int dfi_tphy_rdcslat : 7; // [14:8]
        unsigned int Reserved_15_31 : 17; // [31:15]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_DFITMG2_FREQ1_U;

typedef union {
    struct {
        unsigned int Reserved_0_1 : 2; // [1:0]
        unsigned int rd_odt_delay : 5; // [6:2]
        unsigned int Reserved_7_7 : 1; // [7]
        unsigned int rd_odt_hold : 4; // [11:8]
        unsigned int Reserved_12_15 : 4; // [15:12]
        unsigned int wr_odt_delay : 5; // [20:16]
        unsigned int Reserved_21_23 : 3; // [23:21]
        unsigned int wr_odt_hold : 4; // [27:24]
        unsigned int Reserved_28_31 : 4; // [31:28]
    };
    unsigned int u32;
} DWC_DDR_UMCTL2_C_STRUCT_ODTCFG_FREQ1_U;

typedef union {
    volatile DWC_DDR_UMCTL2_C_STRUCT_MSTR_U dwc_ddr_umctl2_c_struct_mstr;    // 0x0
    volatile DWC_DDR_UMCTL2_C_STRUCT_STAT_U dwc_ddr_umctl2_c_struct_stat;    // 0x4
    volatile DWC_DDR_UMCTL2_C_STRUCT_MRCTRL0_U dwc_ddr_umctl2_c_struct_mrctrl0;    // 0x10
    volatile DWC_DDR_UMCTL2_C_STRUCT_MRCTRL1_U dwc_ddr_umctl2_c_struct_mrctrl1;    // 0x14
    volatile DWC_DDR_UMCTL2_C_STRUCT_MRSTAT_U dwc_ddr_umctl2_c_struct_mrstat;    // 0x18
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATEEN_U dwc_ddr_umctl2_c_struct_derateen;    // 0x20
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATEINT_U dwc_ddr_umctl2_c_struct_derateint;    // 0x24
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATECTL_U dwc_ddr_umctl2_c_struct_deratectl;    // 0x2c
    volatile DWC_DDR_UMCTL2_C_STRUCT_PWRCTL_U dwc_ddr_umctl2_c_struct_pwrctl;    // 0x30
    volatile DWC_DDR_UMCTL2_C_STRUCT_PWRTMG_U dwc_ddr_umctl2_c_struct_pwrtmg;    // 0x34
    volatile DWC_DDR_UMCTL2_C_STRUCT_HWLPCTL_U dwc_ddr_umctl2_c_struct_hwlpctl;    // 0x38
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL0_U dwc_ddr_umctl2_c_struct_rfshctl0;    // 0x50
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL1_U dwc_ddr_umctl2_c_struct_rfshctl1;    // 0x54
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL3_U dwc_ddr_umctl2_c_struct_rfshctl3;    // 0x60
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG_U dwc_ddr_umctl2_c_struct_rfshtmg;    // 0x64
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG1_U dwc_ddr_umctl2_c_struct_rfshtmg1;    // 0x68
    volatile DWC_DDR_UMCTL2_C_STRUCT_CRCPARCTL0_U dwc_ddr_umctl2_c_struct_crcparctl0;    // 0xc0
    volatile DWC_DDR_UMCTL2_C_STRUCT_CRCPARSTAT_U dwc_ddr_umctl2_c_struct_crcparstat;    // 0xcc
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT0_U dwc_ddr_umctl2_c_struct_init0;    // 0xd0
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT1_U dwc_ddr_umctl2_c_struct_init1;    // 0xd4
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT2_U dwc_ddr_umctl2_c_struct_init2;    // 0xd8
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT3_U dwc_ddr_umctl2_c_struct_init3;    // 0xdc
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT4_U dwc_ddr_umctl2_c_struct_init4;    // 0xe0
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT5_U dwc_ddr_umctl2_c_struct_init5;    // 0xe4
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT6_U dwc_ddr_umctl2_c_struct_init6;    // 0xe8
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT7_U dwc_ddr_umctl2_c_struct_init7;    // 0xec
    volatile DWC_DDR_UMCTL2_C_STRUCT_DIMMCTL_U dwc_ddr_umctl2_c_struct_dimmctl;    // 0xf0
    volatile DWC_DDR_UMCTL2_C_STRUCT_RANKCTL_U dwc_ddr_umctl2_c_struct_rankctl;    // 0xf4
    volatile DWC_DDR_UMCTL2_C_STRUCT_RANKCTL1_U dwc_ddr_umctl2_c_struct_rankctl1;    // 0xf8
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG0_U dwc_ddr_umctl2_c_struct_dramtmg0;    // 0x100
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG1_U dwc_ddr_umctl2_c_struct_dramtmg1;    // 0x104
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG2_U dwc_ddr_umctl2_c_struct_dramtmg2;    // 0x108
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG3_U dwc_ddr_umctl2_c_struct_dramtmg3;    // 0x10c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG4_U dwc_ddr_umctl2_c_struct_dramtmg4;    // 0x110
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG5_U dwc_ddr_umctl2_c_struct_dramtmg5;    // 0x114
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG6_U dwc_ddr_umctl2_c_struct_dramtmg6;    // 0x118
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG7_U dwc_ddr_umctl2_c_struct_dramtmg7;    // 0x11c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG8_U dwc_ddr_umctl2_c_struct_dramtmg8;    // 0x120
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG12_U dwc_ddr_umctl2_c_struct_dramtmg12;    // 0x130
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG13_U dwc_ddr_umctl2_c_struct_dramtmg13;    // 0x134
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG14_U dwc_ddr_umctl2_c_struct_dramtmg14;    // 0x138
    volatile DWC_DDR_UMCTL2_C_STRUCT_ZQCTL0_U dwc_ddr_umctl2_c_struct_zqctl0;    // 0x180
    volatile DWC_DDR_UMCTL2_C_STRUCT_ZQCTL1_U dwc_ddr_umctl2_c_struct_zqctl1;    // 0x184
    volatile DWC_DDR_UMCTL2_C_STRUCT_ZQCTL2_U dwc_ddr_umctl2_c_struct_zqctl2;    // 0x188
    volatile DWC_DDR_UMCTL2_C_STRUCT_ZQSTAT_U dwc_ddr_umctl2_c_struct_zqstat;    // 0x18c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFITMG0_U dwc_ddr_umctl2_c_struct_dfitmg0;    // 0x190
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFITMG1_U dwc_ddr_umctl2_c_struct_dfitmg1;    // 0x194
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFILPCFG0_U dwc_ddr_umctl2_c_struct_dfilpcfg0;    // 0x198
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFIUPD0_U dwc_ddr_umctl2_c_struct_dfiupd0;    // 0x1a0
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFIUPD1_U dwc_ddr_umctl2_c_struct_dfiupd1;    // 0x1a4
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFIUPD2_U dwc_ddr_umctl2_c_struct_dfiupd2;    // 0x1a8
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFIMISC_U dwc_ddr_umctl2_c_struct_dfimisc;    // 0x1b0
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFITMG2_U dwc_ddr_umctl2_c_struct_dfitmg2;    // 0x1b4
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFISTAT_U dwc_ddr_umctl2_c_struct_dfistat;    // 0x1bc
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBICTL_U dwc_ddr_umctl2_c_struct_dbictl;    // 0x1c0
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFIPHYMSTR_U dwc_ddr_umctl2_c_struct_dfiphymstr;    // 0x1c4
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP0_U dwc_ddr_umctl2_c_struct_addrmap0;    // 0x200
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP1_U dwc_ddr_umctl2_c_struct_addrmap1;    // 0x204
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP2_U dwc_ddr_umctl2_c_struct_addrmap2;    // 0x208
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP3_U dwc_ddr_umctl2_c_struct_addrmap3;    // 0x20c
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP4_U dwc_ddr_umctl2_c_struct_addrmap4;    // 0x210
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP5_U dwc_ddr_umctl2_c_struct_addrmap5;    // 0x214
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP6_U dwc_ddr_umctl2_c_struct_addrmap6;    // 0x218
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP7_U dwc_ddr_umctl2_c_struct_addrmap7;    // 0x21c
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP9_U dwc_ddr_umctl2_c_struct_addrmap9;    // 0x224
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP10_U dwc_ddr_umctl2_c_struct_addrmap10;    // 0x228
    volatile DWC_DDR_UMCTL2_C_STRUCT_ADDRMAP11_U dwc_ddr_umctl2_c_struct_addrmap11;    // 0x22c
    volatile DWC_DDR_UMCTL2_C_STRUCT_ODTCFG_U dwc_ddr_umctl2_c_struct_odtcfg;    // 0x240
    volatile DWC_DDR_UMCTL2_C_STRUCT_ODTMAP_U dwc_ddr_umctl2_c_struct_odtmap;    // 0x244
    volatile DWC_DDR_UMCTL2_C_STRUCT_SCHED_U dwc_ddr_umctl2_c_struct_sched;    // 0x250
    volatile DWC_DDR_UMCTL2_C_STRUCT_SCHED1_U dwc_ddr_umctl2_c_struct_sched1;    // 0x254
    volatile DWC_DDR_UMCTL2_C_STRUCT_PERFHPR1_U dwc_ddr_umctl2_c_struct_perfhpr1;    // 0x25c
    volatile DWC_DDR_UMCTL2_C_STRUCT_PERFLPR1_U dwc_ddr_umctl2_c_struct_perflpr1;    // 0x264
    volatile DWC_DDR_UMCTL2_C_STRUCT_PERFWR1_U dwc_ddr_umctl2_c_struct_perfwr1;    // 0x26c
    volatile DWC_DDR_UMCTL2_C_STRUCT_SCHED3_U dwc_ddr_umctl2_c_struct_sched3;    // 0x270
    volatile DWC_DDR_UMCTL2_C_STRUCT_SCHED4_U dwc_ddr_umctl2_c_struct_sched4;    // 0x274
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBG0_U dwc_ddr_umctl2_c_struct_dbg0;    // 0x300
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBG1_U dwc_ddr_umctl2_c_struct_dbg1;    // 0x304
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBGCAM_U dwc_ddr_umctl2_c_struct_dbgcam;    // 0x308
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBGCMD_U dwc_ddr_umctl2_c_struct_dbgcmd;    // 0x30c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBGSTAT_U dwc_ddr_umctl2_c_struct_dbgstat;    // 0x310
    volatile DWC_DDR_UMCTL2_C_STRUCT_SWCTL_U dwc_ddr_umctl2_c_struct_swctl;    // 0x320
    volatile DWC_DDR_UMCTL2_C_STRUCT_SWSTAT_U dwc_ddr_umctl2_c_struct_swstat;    // 0x324
    volatile DWC_DDR_UMCTL2_C_STRUCT_SWCTLSTATIC_U dwc_ddr_umctl2_c_struct_swctlstatic;    // 0x328
    volatile DWC_DDR_UMCTL2_C_STRUCT_POISONCFG_U dwc_ddr_umctl2_c_struct_poisoncfg;    // 0x36c
    volatile DWC_DDR_UMCTL2_C_STRUCT_POISONSTAT_U dwc_ddr_umctl2_c_struct_poisonstat;    // 0x370
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATESTAT_U dwc_ddr_umctl2_c_struct_deratestat;    // 0x3f0
    volatile DWC_DDR_UMCTL2_C_STRUCT_PSTAT_U dwc_ddr_umctl2_c_struct_pstat;    // 0x3fc
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCCFG_U dwc_ddr_umctl2_c_struct_pccfg;    // 0x400
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGR_0_U dwc_ddr_umctl2_c_struct_pcfgr_0;    // 0x404
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGW_0_U dwc_ddr_umctl2_c_struct_pcfgw_0;    // 0x408
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCTRL_0_U dwc_ddr_umctl2_c_struct_pctrl_0;    // 0x490
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_0_U dwc_ddr_umctl2_c_struct_pcfgqos0_0;    // 0x494
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_0_U dwc_ddr_umctl2_c_struct_pcfgqos1_0;    // 0x498
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_0_U dwc_ddr_umctl2_c_struct_pcfgwqos0_0;    // 0x49c
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_0_U dwc_ddr_umctl2_c_struct_pcfgwqos1_0;    // 0x4a0
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGR_1_U dwc_ddr_umctl2_c_struct_pcfgr_1;    // 0x4b4
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGW_1_U dwc_ddr_umctl2_c_struct_pcfgw_1;    // 0x4b8
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCTRL_1_U dwc_ddr_umctl2_c_struct_pctrl_1;    // 0x540
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_1_U dwc_ddr_umctl2_c_struct_pcfgqos0_1;    // 0x544
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_1_U dwc_ddr_umctl2_c_struct_pcfgqos1_1;    // 0x548
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_1_U dwc_ddr_umctl2_c_struct_pcfgwqos0_1;    // 0x54c
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_1_U dwc_ddr_umctl2_c_struct_pcfgwqos1_1;    // 0x550
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGR_2_U dwc_ddr_umctl2_c_struct_pcfgr_2;    // 0x564
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGW_2_U dwc_ddr_umctl2_c_struct_pcfgw_2;    // 0x568
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCTRL_2_U dwc_ddr_umctl2_c_struct_pctrl_2;    // 0x5f0
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_2_U dwc_ddr_umctl2_c_struct_pcfgqos0_2;    // 0x5f4
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_2_U dwc_ddr_umctl2_c_struct_pcfgqos1_2;    // 0x5f8
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_2_U dwc_ddr_umctl2_c_struct_pcfgwqos0_2;    // 0x5fc
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_2_U dwc_ddr_umctl2_c_struct_pcfgwqos1_2;    // 0x600
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGR_3_U dwc_ddr_umctl2_c_struct_pcfgr_3;    // 0x614
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGW_3_U dwc_ddr_umctl2_c_struct_pcfgw_3;    // 0x618
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCTRL_3_U dwc_ddr_umctl2_c_struct_pctrl_3;    // 0x6a0
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_3_U dwc_ddr_umctl2_c_struct_pcfgqos0_3;    // 0x6a4
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_3_U dwc_ddr_umctl2_c_struct_pcfgqos1_3;    // 0x6a8
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_3_U dwc_ddr_umctl2_c_struct_pcfgwqos0_3;    // 0x6ac
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_3_U dwc_ddr_umctl2_c_struct_pcfgwqos1_3;    // 0x6b0
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGR_4_U dwc_ddr_umctl2_c_struct_pcfgr_4;    // 0x6c4
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGW_4_U dwc_ddr_umctl2_c_struct_pcfgw_4;    // 0x6c8
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCTRL_4_U dwc_ddr_umctl2_c_struct_pctrl_4;    // 0x750
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS0_4_U dwc_ddr_umctl2_c_struct_pcfgqos0_4;    // 0x754
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGQOS1_4_U dwc_ddr_umctl2_c_struct_pcfgqos1_4;    // 0x758
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS0_4_U dwc_ddr_umctl2_c_struct_pcfgwqos0_4;    // 0x75c
    volatile DWC_DDR_UMCTL2_C_STRUCT_PCFGWQOS1_4_U dwc_ddr_umctl2_c_struct_pcfgwqos1_4;    // 0x760
    volatile DWC_DDR_UMCTL2_C_STRUCT_UMCTL2_VER_NUMBER_U dwc_ddr_umctl2_c_struct_umctl2_ver_number;    // 0xff0
    volatile DWC_DDR_UMCTL2_C_STRUCT_UMCTL2_VER_TYPE_U dwc_ddr_umctl2_c_struct_umctl2_ver_type;    // 0xff4
    volatile DWC_DDR_UMCTL2_C_STRUCT_STAT_DCH1_U dwc_ddr_umctl2_c_struct_stat_dch1;    // 0x1b04
    volatile DWC_DDR_UMCTL2_C_STRUCT_MRCTRL0_DCH1_U dwc_ddr_umctl2_c_struct_mrctrl0_dch1;    // 0x1b10
    volatile DWC_DDR_UMCTL2_C_STRUCT_MRCTRL1_DCH1_U dwc_ddr_umctl2_c_struct_mrctrl1_dch1;    // 0x1b14
    volatile DWC_DDR_UMCTL2_C_STRUCT_MRSTAT_DCH1_U dwc_ddr_umctl2_c_struct_mrstat_dch1;    // 0x1b18
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATECTL_DCH1_U dwc_ddr_umctl2_c_struct_deratectl_dch1;    // 0x1b2c
    volatile DWC_DDR_UMCTL2_C_STRUCT_PWRCTL_DCH1_U dwc_ddr_umctl2_c_struct_pwrctl_dch1;    // 0x1b30
    volatile DWC_DDR_UMCTL2_C_STRUCT_HWLPCTL_DCH1_U dwc_ddr_umctl2_c_struct_hwlpctl_dch1;    // 0x1b38
    volatile DWC_DDR_UMCTL2_C_STRUCT_CRCPARCTL0_DCH1_U dwc_ddr_umctl2_c_struct_crcparctl0_dch1;    // 0x1bc0
    volatile DWC_DDR_UMCTL2_C_STRUCT_CRCPARSTAT_DCH1_U dwc_ddr_umctl2_c_struct_crcparstat_dch1;    // 0x1bcc
    volatile DWC_DDR_UMCTL2_C_STRUCT_ZQCTL2_DCH1_U dwc_ddr_umctl2_c_struct_zqctl2_dch1;    // 0x1c88
    volatile DWC_DDR_UMCTL2_C_STRUCT_ZQSTAT_DCH1_U dwc_ddr_umctl2_c_struct_zqstat_dch1;    // 0x1c8c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFISTAT_DCH1_U dwc_ddr_umctl2_c_struct_dfistat_dch1;    // 0x1cbc
    volatile DWC_DDR_UMCTL2_C_STRUCT_ODTMAP_DCH1_U dwc_ddr_umctl2_c_struct_odtmap_dch1;    // 0x1d44
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBG1_DCH1_U dwc_ddr_umctl2_c_struct_dbg1_dch1;    // 0x1e04
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBGCAM_DCH1_U dwc_ddr_umctl2_c_struct_dbgcam_dch1;    // 0x1e08
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBGCMD_DCH1_U dwc_ddr_umctl2_c_struct_dbgcmd_dch1;    // 0x1e0c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DBGSTAT_DCH1_U dwc_ddr_umctl2_c_struct_dbgstat_dch1;    // 0x1e10
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATESTAT_DCH1_U dwc_ddr_umctl2_c_struct_deratestat_dch1;    // 0x1ef0
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATEEN_FREQ1_U dwc_ddr_umctl2_c_struct_derateen_freq1;    // 0x2020
    volatile DWC_DDR_UMCTL2_C_STRUCT_DERATEINT_FREQ1_U dwc_ddr_umctl2_c_struct_derateint_freq1;    // 0x2024
    volatile DWC_DDR_UMCTL2_C_STRUCT_PWRTMG_FREQ1_U dwc_ddr_umctl2_c_struct_pwrtmg_freq1;    // 0x2034
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHCTL0_FREQ1_U dwc_ddr_umctl2_c_struct_rfshctl0_freq1;    // 0x2050
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG_FREQ1_U dwc_ddr_umctl2_c_struct_rfshtmg_freq1;    // 0x2064
    volatile DWC_DDR_UMCTL2_C_STRUCT_RFSHTMG1_FREQ1_U dwc_ddr_umctl2_c_struct_rfshtmg1_freq1;    // 0x2068
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT3_FREQ1_U dwc_ddr_umctl2_c_struct_init3_freq1;    // 0x20dc
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT4_FREQ1_U dwc_ddr_umctl2_c_struct_init4_freq1;    // 0x20e0
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT6_FREQ1_U dwc_ddr_umctl2_c_struct_init6_freq1;    // 0x20e8
    volatile DWC_DDR_UMCTL2_C_STRUCT_INIT7_FREQ1_U dwc_ddr_umctl2_c_struct_init7_freq1;    // 0x20ec
    volatile DWC_DDR_UMCTL2_C_STRUCT_RANKCTL_FREQ1_U dwc_ddr_umctl2_c_struct_rankctl_freq1;    // 0x20f4
    volatile DWC_DDR_UMCTL2_C_STRUCT_RANKCTL1_FREQ1_U dwc_ddr_umctl2_c_struct_rankctl1_freq1;    // 0x20f8
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG0_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg0_freq1;    // 0x2100
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG1_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg1_freq1;    // 0x2104
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG2_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg2_freq1;    // 0x2108
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG3_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg3_freq1;    // 0x210c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG4_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg4_freq1;    // 0x2110
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG5_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg5_freq1;    // 0x2114
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG6_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg6_freq1;    // 0x2118
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG7_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg7_freq1;    // 0x211c
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG8_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg8_freq1;    // 0x2120
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG12_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg12_freq1;    // 0x2130
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG13_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg13_freq1;    // 0x2134
    volatile DWC_DDR_UMCTL2_C_STRUCT_DRAMTMG14_FREQ1_U dwc_ddr_umctl2_c_struct_dramtmg14_freq1;    // 0x2138
    volatile DWC_DDR_UMCTL2_C_STRUCT_ZQCTL0_FREQ1_U dwc_ddr_umctl2_c_struct_zqctl0_freq1;    // 0x2180
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFITMG0_FREQ1_U dwc_ddr_umctl2_c_struct_dfitmg0_freq1;    // 0x2190
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFITMG1_FREQ1_U dwc_ddr_umctl2_c_struct_dfitmg1_freq1;    // 0x2194
    volatile DWC_DDR_UMCTL2_C_STRUCT_DFITMG2_FREQ1_U dwc_ddr_umctl2_c_struct_dfitmg2_freq1;    // 0x21b4
    volatile DWC_DDR_UMCTL2_C_STRUCT_ODTCFG_FREQ1_U dwc_ddr_umctl2_c_struct_odtcfg_freq1;    // 0x2240
} DWC_DDR_UMCTL2_C_STRUCT_REG_S;

#endif

