/* Copyright (C) 2018 RDA Technologies Limited and/or its affiliates("RDA").
 * All rights reserved.
 *
 * This software is supplied "AS IS" without any warranties.
 * RDA assumes no responsibility or liability for the use of the software,
 * conveys no license or title under any patent, copyright, or mask work
 * right to the product. RDA reserves the right to make changes in the
 * software without notification.  RDA also make no representation or
 * warranty that such application will be suitable for the specified use
 * without further testing or modification.
 */

#ifndef _IDDET_H_
#define _IDDET_H_

// Auto generated by dtools(see dtools.txt for its version).
// Don't edit it manually!

#define REG_IDDET_BASE (0x18600000)

typedef volatile struct
{
    uint32_t iddet_start;              // 0x00000000
    uint32_t pss1_ctrl;                // 0x00000004
    uint32_t pss2_ctrl;                // 0x00000008
    uint32_t sss_ctrl;                 // 0x0000000c
    uint32_t freqitm_idident_ctrl;     // 0x00000010
    uint32_t resync_ctrl;              // 0x00000014
    uint32_t shift_ctrl0;              // 0x00000018
    uint32_t shift_ctrl1;              // 0x0000001c
    uint32_t shift_ctrl2;              // 0x00000020
    uint32_t int_ctrl;                 // 0x00000024
    uint32_t pos_offset;               // 0x00000028
    uint32_t sam_num_ctrl1;            // 0x0000002c
    uint32_t sam_num_ctrl2;            // 0x00000030
    uint32_t sam_num_ctrl3;            // 0x00000034
    uint32_t sam_num_ctrl4;            // 0x00000038
    uint32_t sam_num_ctrl5;            // 0x0000003c
    uint32_t sam_num_ctrl6;            // 0x00000040
    uint32_t sam_num_ctrl7;            // 0x00000044
    uint32_t sam_num_ctrl8;            // 0x00000048
    uint32_t sam_num_ctrl9;            // 0x0000004c
    uint32_t sam_num_ctrl10;           // 0x00000050
    uint32_t end_threshold1;           // 0x00000054
    uint32_t end_threshold2;           // 0x00000058
    uint32_t end_threshold3;           // 0x0000005c
    uint32_t end_threshold4;           // 0x00000060
    uint32_t end_threshold5;           // 0x00000064
    uint32_t end_threshold6;           // 0x00000068
    uint32_t end_threshold7;           // 0x0000006c
    uint32_t end_threshold8;           // 0x00000070
    uint32_t end_threshold9;           // 0x00000074
    uint32_t end_threshold10;          // 0x00000078
    uint32_t pssitm_id_para1;          // 0x0000007c
    uint32_t pssitm_id_para2;          // 0x00000080
    uint32_t pssitm_id_para3;          // 0x00000084
    uint32_t pssitm_id_para4;          // 0x00000088
    uint32_t pssitm_id_para5;          // 0x0000008c
    uint32_t pssitm_id_para6;          // 0x00000090
    uint32_t pssitm_id_para7;          // 0x00000094
    uint32_t pssitm_id_para8;          // 0x00000098
    uint32_t pssitm_id_para9;          // 0x0000009c
    uint32_t pssitm_id_para10;         // 0x000000a0
    uint32_t pssitm_id_para11;         // 0x000000a4
    uint32_t pssitm_id_para12;         // 0x000000a8
    uint32_t sss_id_para1;             // 0x000000ac
    uint32_t sss_id_para2;             // 0x000000b0
    uint32_t sss_id_para3;             // 0x000000b4
    uint32_t sss_id_para4;             // 0x000000b8
    uint32_t sss_id_para5;             // 0x000000bc
    uint32_t sss_id_para6;             // 0x000000c0
    uint32_t sss_id_para7;             // 0x000000c4
    uint32_t sss_id_para8;             // 0x000000c8
    uint32_t sss_id_para9;             // 0x000000cc
    uint32_t sss_id_para10;            // 0x000000d0
    uint32_t sss_id_para11;            // 0x000000d4
    uint32_t sss_id_para12;            // 0x000000d8
    uint32_t freqitm_idident_para1;    // 0x000000dc
    uint32_t freqitm_idident_para2;    // 0x000000e0
    uint32_t freqitm_idident_para3;    // 0x000000e4
    uint32_t freqitm_idident_para4;    // 0x000000e8
    uint32_t freqitm_idident_para5;    // 0x000000ec
    uint32_t freqitm_idident_para6;    // 0x000000f0
    uint32_t freqitm_idident_para7;    // 0x000000f4
    uint32_t freqitm_idident_para8;    // 0x000000f8
    uint32_t freqitm_idident_para9;    // 0x000000fc
    uint32_t freqitm_idident_para10;   // 0x00000100
    uint32_t freqitm_idident_para11;   // 0x00000104
    uint32_t freqitm_idident_para12;   // 0x00000108
    uint32_t id_postion1;              // 0x0000010c
    uint32_t id_postion2;              // 0x00000110
    uint32_t id_postion3;              // 0x00000114
    uint32_t id_postion4;              // 0x00000118
    uint32_t id_postion5;              // 0x0000011c
    uint32_t id_postion6;              // 0x00000120
    uint32_t id_postion7;              // 0x00000124
    uint32_t id_postion8;              // 0x00000128
    uint32_t id_postion9;              // 0x0000012c
    uint32_t id_postion10;             // 0x00000130
    uint32_t id_postion11;             // 0x00000134
    uint32_t id_postion12;             // 0x00000138
    uint32_t pss_sss_find;             // 0x0000013c
    uint32_t freq_pssgru1;             // 0x00000140
    uint32_t freq_pssgru2;             // 0x00000144
    uint32_t freq_pssitm1;             // 0x00000148
    uint32_t freq_pssitm2;             // 0x0000014c
    uint32_t freq_pssitm3;             // 0x00000150
    uint32_t freq_pssitm4;             // 0x00000154
    uint32_t rssi_target;              // 0x00000158
    uint32_t ppm_gru_cfg1;             // 0x0000015c
    uint32_t ppm_gru_cfg2;             // 0x00000160
    uint32_t ppm_gru_cfg3;             // 0x00000164
    uint32_t ppm_gru_cfg4;             // 0x00000168
    uint32_t ppm_gru_cfg5;             // 0x0000016c
    uint32_t ppm_delt_cfg;             // 0x00000170
    uint32_t fft_cut;                  // 0x00000174
    uint32_t ic_id_para;               // 0x00000178
    uint32_t ic_cfg;                   // 0x0000017c
    uint32_t freqitm_out0;             // 0x00000180
    uint32_t valid_node;               // 0x00000184
    uint32_t sample_sum;               // 0x00000188
    uint32_t rssi;                     // 0x0000018c
    uint32_t id_power_noise1;          // 0x00000190
    uint32_t id_power_noise2;          // 0x00000194
    uint32_t id_power_noise3;          // 0x00000198
    uint32_t id_power_noise4;          // 0x0000019c
    uint32_t id_power_noise5;          // 0x000001a0
    uint32_t id_power_noise6;          // 0x000001a4
    uint32_t id_power_noise7;          // 0x000001a8
    uint32_t id_power_noise8;          // 0x000001ac
    uint32_t id_power_noise9;          // 0x000001b0
    uint32_t id_power_noise10;         // 0x000001b4
    uint32_t id_power_noise11;         // 0x000001b8
    uint32_t id_power_noise12;         // 0x000001bc
    uint32_t id_position_freq1;        // 0x000001c0
    uint32_t id_position_freq2;        // 0x000001c4
    uint32_t id_position_freq3;        // 0x000001c8
    uint32_t id_position_freq4;        // 0x000001cc
    uint32_t id_position_freq5;        // 0x000001d0
    uint32_t id_position_freq6;        // 0x000001d4
    uint32_t id_position_freq7;        // 0x000001d8
    uint32_t id_position_freq8;        // 0x000001dc
    uint32_t id_position_freq9;        // 0x000001e0
    uint32_t id_position_freq10;       // 0x000001e4
    uint32_t id_position_freq11;       // 0x000001e8
    uint32_t id_position_freq12;       // 0x000001ec
    uint32_t id_info1;                 // 0x000001f0
    uint32_t id_info2;                 // 0x000001f4
    uint32_t id_info3;                 // 0x000001f8
    uint32_t id_info4;                 // 0x000001fc
    uint32_t id_info5;                 // 0x00000200
    uint32_t id_info6;                 // 0x00000204
    uint32_t id_info7;                 // 0x00000208
    uint32_t id_info8;                 // 0x0000020c
    uint32_t id_info9;                 // 0x00000210
    uint32_t id_info10;                // 0x00000214
    uint32_t id_info11;                // 0x00000218
    uint32_t id_info12;                // 0x0000021c
    uint32_t assist_id_power_noise1;   // 0x00000220
    uint32_t assist_id_power_noise2;   // 0x00000224
    uint32_t assist_id_power_noise3;   // 0x00000228
    uint32_t assist_id_power_noise4;   // 0x0000022c
    uint32_t assist_id_position_freq1; // 0x00000230
    uint32_t assist_id_position_freq2; // 0x00000234
    uint32_t assist_id_position_freq3; // 0x00000238
    uint32_t assist_id_position_freq4; // 0x0000023c
    uint32_t assist_id_info1;          // 0x00000240
    uint32_t assist_id_info2;          // 0x00000244
    uint32_t assist_id_info3;          // 0x00000248
    uint32_t assist_id_info4;          // 0x0000024c
    uint32_t int_flag;                 // 0x00000250
    uint32_t sta_flag;                 // 0x00000254
    uint32_t soft_use;                 // 0x00000258
    uint32_t pre_sample_count;         // 0x0000025c
    uint32_t freq_search_ctrl;         // 0x00000260
    uint32_t freq_search_config1;      // 0x00000264
    uint32_t freq_search_config2;      // 0x00000268
    uint32_t band_win_start_conf1;     // 0x0000026c
    uint32_t band_win_start_conf2;     // 0x00000270
    uint32_t band_win_end_conf1;       // 0x00000274
    uint32_t band_win_end_conf2;       // 0x00000278
    uint32_t agc_conf;                 // 0x0000027c
    uint32_t sbi_sum__len;             // 0x00000280
    uint32_t target_agc;               // 0x00000284
    uint32_t freqitm_out1;             // 0x00000288
    uint32_t pss1_resyn_rssi_range;    // 0x0000028c
    uint32_t pss1_max_rssi0;           // 0x00000290
    uint32_t pss1_max_rssi1;           // 0x00000294
    uint32_t pss1_max_rssi2;           // 0x00000298
    uint32_t pss1_max_rssi3;           // 0x0000029c
    uint32_t pss1_max_rssi4;           // 0x000002a0
    uint32_t pss1_max_rssi5;           // 0x000002a4
    uint32_t pss1_max_rssi6;           // 0x000002a8
    uint32_t pss1_max_rssi7;           // 0x000002ac
    uint32_t pss1_max_rssi8;           // 0x000002b0
    uint32_t pss1_max_rssi9;           // 0x000002b4
    uint32_t pss1_max_rssi10;          // 0x000002b8
    uint32_t pss1_max_rssi11;          // 0x000002bc
    uint32_t __704[848];               // 0x000002c0
    uint32_t mem8_9_mem10_11;          // 0x00001000
    uint32_t __4100[1023];             // 0x00001004
    uint32_t mem12;                    // 0x00002000
    uint32_t __8196[1023];             // 0x00002004
    uint32_t mem15;                    // 0x00003000
    uint32_t __12292[1023];            // 0x00003004
    uint32_t memqf;                    // 0x00004000
    uint32_t __16388[4095];            // 0x00004004
    uint32_t mem1_8_mem1_11;           // 0x00008000
    uint32_t __32772[4095];            // 0x00008004
    uint32_t mem_freq_pwr_before_agc;  // 0x0000c000
    uint32_t __49156[1023];            // 0x0000c004
    uint32_t mem_freq_len_agc;         // 0x0000d000
} HWP_IDDET_T;

#define hwp_iddet ((HWP_IDDET_T *)REG_ACCESS_ADDRESS(REG_IDDET_BASE))

// iddet_start
typedef union {
    uint32_t v;
    struct
    {
        uint32_t iddet_start : 1;    // [0]
        uint32_t iddet_stop : 1;     // [1]
        uint32_t data_move_out : 1;  // [2]
        uint32_t txrx_offset_en : 1; // [3]
        uint32_t flow_sel : 3;       // [6:4]
        uint32_t rec_continuity : 1; // [7]
        uint32_t sample_num : 4;     // [11:8]
        uint32_t sample_len : 14;    // [25:12]
        uint32_t save_last_pwr : 1;  // [26]
        uint32_t rd_pre_pwr : 1;     // [27]
        uint32_t __31_28 : 4;        // [31:28]
    } b;
} REG_IDDET_IDDET_START_T;

// pss1_ctrl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t dc_en : 1;            // [0]
        uint32_t dagc_en : 1;          // [1]
        uint32_t localpss_freq_en : 2; // [3:2]
        uint32_t id_mode_sel : 2;      // [5:4]
        uint32_t ppm_en : 1;           // [6]
        uint32_t flow_mode_sel : 1;    // [7]
        uint32_t max_num : 3;          // [10:8]
        uint32_t __11_11 : 1;          // [11]
        uint32_t output_num : 4;       // [15:12]
        uint32_t rssi_en : 1;          // [16]
        uint32_t __31_17 : 15;         // [31:17]
    } b;
} REG_IDDET_PSS1_CTRL_T;

// pss2_ctrl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t dc_en : 1;            // [0]
        uint32_t dagc_en : 1;          // [1]
        uint32_t localpss_freq_en : 1; // [2]
        uint32_t ppm_en : 1;           // [3]
        uint32_t pos_num : 4;          // [7:4]
        uint32_t rssi_en : 1;          // [8]
        uint32_t __31_9 : 23;          // [31:9]
    } b;
} REG_IDDET_PSS2_CTRL_T;

// sss_ctrl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t dc_en : 1;          // [0]
        uint32_t dagc_en : 1;        // [1]
        uint32_t freq_en : 1;        // [2]
        uint32_t ic_en : 1;          // [3]
        uint32_t fdd_tdd_sel : 1;    // [4]
        uint32_t id_mode_sel : 1;    // [5]
        uint32_t flow_mode_sel : 1;  // [6]
        uint32_t ppm_en : 1;         // [7]
        uint32_t pos_num : 4;        // [11:8]
        uint32_t nid1 : 8;           // [19:12]
        uint32_t normalsort_num : 4; // [23:20]
        uint32_t sort_sel : 1;       // [24]
        uint32_t pos_slide_num : 2;  // [26:25]
        uint32_t rssi_en : 1;        // [27]
        uint32_t __31_28 : 4;        // [31:28]
    } b;
} REG_IDDET_SSS_CTRL_T;

// freqitm_idident_ctrl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t dc_en : 1;         // [0]
        uint32_t dagc_en : 1;       // [1]
        uint32_t ppm_en : 1;        // [2]
        uint32_t freqitm_en : 1;    // [3]
        uint32_t freq_en : 1;       // [4]
        uint32_t fdd_tdd_sel : 1;   // [5]
        uint32_t __7_6 : 2;         // [7:6]
        uint32_t slide_num : 3;     // [10:8]
        uint32_t __11_11 : 1;       // [11]
        uint32_t pos_num : 4;       // [15:12]
        uint32_t pos_slide_num : 2; // [17:16]
        uint32_t rssi_en : 1;       // [18]
        uint32_t __31_19 : 13;      // [31:19]
    } b;
} REG_IDDET_FREQITM_IDIDENT_CTRL_T;

// resync_ctrl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t dc_en : 1;    // [0]
        uint32_t dagc_en : 1;  // [1]
        uint32_t id2 : 2;      // [3:2]
        uint32_t id1 : 8;      // [11:4]
        uint32_t max_num : 3;  // [14:12]
        uint32_t __15_15 : 1;  // [15]
        uint32_t sfnum : 2;    // [17:16]
        uint32_t data_len : 3; // [20:18]
        uint32_t rssi_en : 1;  // [21]
        uint32_t __31_22 : 10; // [31:22]
    } b;
} REG_IDDET_RESYNC_CTRL_T;

// shift_ctrl0
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rssi_s0 : 4;    // [3:0]
        uint32_t pwr_acc_s0 : 4; // [7:4]
        uint32_t rssi_s1 : 4;    // [11:8]
        uint32_t pwr_acc_s1 : 4; // [15:12]
        uint32_t rssi_s2 : 4;    // [19:16]
        uint32_t pwr_acc_s2 : 4; // [23:20]
        uint32_t rssi_s3 : 4;    // [27:24]
        uint32_t pwr_acc_s3 : 4; // [31:28]
    } b;
} REG_IDDET_SHIFT_CTRL0_T;

// shift_ctrl1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rssi_s4 : 4;    // [3:0]
        uint32_t pwr_acc_s4 : 4; // [7:4]
        uint32_t rssi_s5 : 4;    // [11:8]
        uint32_t pwr_acc_s5 : 4; // [15:12]
        uint32_t rssi_s6 : 4;    // [19:16]
        uint32_t pwr_acc_s6 : 4; // [23:20]
        uint32_t rssi_s7 : 4;    // [27:24]
        uint32_t pwr_acc_s7 : 4; // [31:28]
    } b;
} REG_IDDET_SHIFT_CTRL1_T;

// shift_ctrl2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rssi_s8 : 4;    // [3:0]
        uint32_t pwr_acc_s8 : 4; // [7:4]
        uint32_t rssi_s9 : 4;    // [11:8]
        uint32_t pwr_acc_s9 : 4; // [15:12]
        uint32_t __31_16 : 16;   // [31:16]
    } b;
} REG_IDDET_SHIFT_CTRL2_T;

// int_ctrl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pssgru_fin_irq_en : 1;         // [0]
        uint32_t pssitm_fin_irq_en : 1;         // [1]
        uint32_t sss_fin_irq_en : 1;            // [2]
        uint32_t freq_idident_fin_irq_en : 1;   // [3]
        uint32_t resync_fin_irq_en : 1;         // [4]
        uint32_t txrx_suspend_irq_en : 1;       // [5]
        uint32_t error_irq_en : 1;              // [6]
        uint32_t stop : 1;                      // [7]
        uint32_t rssi_en : 1;                   // [8]
        uint32_t freq_search_irq_en : 1;        // [9]
        uint32_t discon_section_fin_irq_en : 1; // [10]
        uint32_t __31_11 : 21;                  // [31:11]
    } b;
} REG_IDDET_INT_CTRL_T;

// pos_offset
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pssitm_sss_offset_pos : 15; // [14:0]
        uint32_t __15_15 : 1;                // [15]
        uint32_t pss1_rssi_th : 16;          // [31:16]
    } b;
} REG_IDDET_POS_OFFSET_T;

// sam_num_ctrl1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL1_T;

// sam_num_ctrl2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL2_T;

// sam_num_ctrl3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL3_T;

// sam_num_ctrl4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL4_T;

// sam_num_ctrl5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL5_T;

// sam_num_ctrl6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL6_T;

// sam_num_ctrl7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL7_T;

// sam_num_ctrl8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL8_T;

// sam_num_ctrl9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL9_T;

// sam_num_ctrl10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sam_num : 8; // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_SAM_NUM_CTRL10_T;

// end_threshold1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD1_T;

// end_threshold2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD2_T;

// end_threshold3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD3_T;

// end_threshold4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD4_T;

// end_threshold5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD5_T;

// end_threshold6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD6_T;

// end_threshold7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD7_T;

// end_threshold8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD8_T;

// end_threshold9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD9_T;

// end_threshold10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t end_threshold0 : 16; // [15:0]
        uint32_t end_threshold1 : 16; // [31:16]
    } b;
} REG_IDDET_END_THRESHOLD10_T;

// pssitm_id_para1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA1_T;

// pssitm_id_para2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA2_T;

// pssitm_id_para3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA3_T;

// pssitm_id_para4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA4_T;

// pssitm_id_para5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA5_T;

// pssitm_id_para6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA6_T;

// pssitm_id_para7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA7_T;

// pssitm_id_para8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA8_T;

// pssitm_id_para9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA9_T;

// pssitm_id_para10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA10_T;

// pssitm_id_para11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA11_T;

// pssitm_id_para12
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t __3_2 : 2;           // [3:2]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_PSSITM_ID_PARA12_T;

// sss_id_para1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA1_T;

// sss_id_para2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA2_T;

// sss_id_para3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA3_T;

// sss_id_para4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA4_T;

// sss_id_para5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA5_T;

// sss_id_para6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA6_T;

// sss_id_para7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA7_T;

// sss_id_para8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA8_T;

// sss_id_para9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA9_T;

// sss_id_para10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA10_T;

// sss_id_para11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA11_T;

// sss_id_para12
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;            // [1:0]
        uint32_t sfnum : 1;           // [2]
        uint32_t cptype : 1;          // [3]
        uint32_t pssgru_ppm : 6;      // [9:4]
        uint32_t __11_10 : 2;         // [11:10]
        uint32_t pssgru_freqoff : 16; // [27:12]
        uint32_t __31_28 : 4;         // [31:28]
    } b;
} REG_IDDET_SSS_ID_PARA12_T;

// freqitm_idident_para1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA1_T;

// freqitm_idident_para2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA2_T;

// freqitm_idident_para3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA3_T;

// freqitm_idident_para4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA4_T;

// freqitm_idident_para5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA5_T;

// freqitm_idident_para6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA6_T;

// freqitm_idident_para7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA7_T;

// freqitm_idident_para8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA8_T;

// freqitm_idident_para9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA9_T;

// freqitm_idident_para10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA10_T;

// freqitm_idident_para11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA11_T;

// freqitm_idident_para12
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;    // [7:0]
        uint32_t __31_8 : 24; // [31:8]
    } b;
} REG_IDDET_FREQITM_IDIDENT_PARA12_T;

// id_postion1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION1_T;

// id_postion2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION2_T;

// id_postion3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION3_T;

// id_postion4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION4_T;

// id_postion5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION5_T;

// id_postion6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION6_T;

// id_postion7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION7_T;

// id_postion8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION8_T;

// id_postion9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION9_T;

// id_postion10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION10_T;

// id_postion11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION11_T;

// id_postion12
typedef union {
    uint32_t v;
    struct
    {
        uint32_t id_pos : 14;  // [13:0]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_ID_POSTION12_T;

// pss_sss_find
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nois_th : 8;    // [7:0]
        uint32_t noisth_en : 1;  // [8]
        uint32_t p2p_win : 7;    // [15:9]
        uint32_t wipe_win : 2;   // [17:16]
        uint32_t assist_win : 2; // [19:18]
        uint32_t nois_win : 2;   // [21:20]
        uint32_t __23_22 : 2;    // [23:22]
        uint32_t find_win : 4;   // [27:24]
        uint32_t __31_28 : 4;    // [31:28]
    } b;
} REG_IDDET_PSS_SSS_FIND_T;

// freq_pssgru1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_pssgru0 : 10; // [9:0]
        uint32_t freq_pssgru1 : 10; // [19:10]
        uint32_t freq_pssgru2 : 10; // [29:20]
        uint32_t __31_30 : 2;       // [31:30]
    } b;
} REG_IDDET_FREQ_PSSGRU1_T;

// freq_pssgru2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_pssgru3 : 10; // [9:0]
        uint32_t freq_pssgru4 : 10; // [19:10]
        uint32_t __31_20 : 12;      // [31:20]
    } b;
} REG_IDDET_FREQ_PSSGRU2_T;

// freq_pssitm1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_pssitm : 13; // [12:0]
        uint32_t __31_13 : 19;     // [31:13]
    } b;
} REG_IDDET_FREQ_PSSITM1_T;

// freq_pssitm2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_pssitm : 13; // [12:0]
        uint32_t __31_13 : 19;     // [31:13]
    } b;
} REG_IDDET_FREQ_PSSITM2_T;

// freq_pssitm3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_pssitm : 13; // [12:0]
        uint32_t __31_13 : 19;     // [31:13]
    } b;
} REG_IDDET_FREQ_PSSITM3_T;

// freq_pssitm4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_pssitm : 13; // [12:0]
        uint32_t __31_13 : 19;     // [31:13]
    } b;
} REG_IDDET_FREQ_PSSITM4_T;

// ppm_gru_cfg1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ppm0 : 6;     // [5:0]
        uint32_t __7_6 : 2;    // [7:6]
        uint32_t ppm1 : 6;     // [13:8]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_PPM_GRU_CFG1_T;

// ppm_gru_cfg2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ppm0 : 6;     // [5:0]
        uint32_t __7_6 : 2;    // [7:6]
        uint32_t ppm1 : 6;     // [13:8]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_PPM_GRU_CFG2_T;

// ppm_gru_cfg3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ppm0 : 6;     // [5:0]
        uint32_t __7_6 : 2;    // [7:6]
        uint32_t ppm1 : 6;     // [13:8]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_PPM_GRU_CFG3_T;

// ppm_gru_cfg4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ppm0 : 6;     // [5:0]
        uint32_t __7_6 : 2;    // [7:6]
        uint32_t ppm1 : 6;     // [13:8]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_PPM_GRU_CFG4_T;

// ppm_gru_cfg5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ppm0 : 6;     // [5:0]
        uint32_t __7_6 : 2;    // [7:6]
        uint32_t ppm1 : 6;     // [13:8]
        uint32_t __31_14 : 18; // [31:14]
    } b;
} REG_IDDET_PPM_GRU_CFG5_T;

// ppm_delt_cfg
typedef union {
    uint32_t v;
    struct
    {
        uint32_t delt_ppm0 : 4; // [3:0]
        uint32_t delt_ppm1 : 4; // [7:4]
        uint32_t delt_ppm2 : 4; // [11:8]
        uint32_t delt_ppm3 : 4; // [15:12]
        uint32_t __31_16 : 16;  // [31:16]
    } b;
} REG_IDDET_PPM_DELT_CFG_T;

// fft_cut
typedef union {
    uint32_t v;
    struct
    {
        uint32_t lnum_mod1 : 4; // [3:0]
        uint32_t lnum_mod2 : 4; // [7:4]
        uint32_t __31_8 : 24;   // [31:8]
    } b;
} REG_IDDET_FFT_CUT_T;

// ic_id_para
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid1 : 8;        // [7:0]
        uint32_t nid2 : 2;        // [9:8]
        uint32_t sfnum : 1;       // [10]
        uint32_t cptype : 1;      // [11]
        uint32_t freq_off : 16;   // [27:12]
        uint32_t freq_off_en : 1; // [28]
        uint32_t __31_29 : 3;     // [31:29]
    } b;
} REG_IDDET_IC_ID_PARA_T;

// ic_cfg
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ic_shift : 4;   // [3:0]
        uint32_t sssic_pos : 14; // [17:4]
        uint32_t ic_ppm : 6;     // [23:18]
        uint32_t __31_24 : 8;    // [31:24]
    } b;
} REG_IDDET_IC_CFG_T;

// freqitm_out0
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_itm_out0 : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_FREQITM_OUT0_T;

// valid_node
typedef union {
    uint32_t v;
    struct
    {
        uint32_t valid_node0 : 4; // [3:0], read only
        uint32_t valid_node1 : 4; // [7:4], read only
        uint32_t __31_8 : 24;     // [31:8]
    } b;
} REG_IDDET_VALID_NODE_T;

// sample_sum
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sample_sum : 8; // [7:0]
        uint32_t __31_8 : 24;    // [31:8]
    } b;
} REG_IDDET_SAMPLE_SUM_T;

// rssi
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rssi : 16;    // [15:0], read only
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_IDDET_RSSI_T;

// id_power_noise1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE1_T;

// id_power_noise2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE2_T;

// id_power_noise3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE3_T;

// id_power_noise4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE4_T;

// id_power_noise5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE5_T;

// id_power_noise6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE6_T;

// id_power_noise7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE7_T;

// id_power_noise8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE8_T;

// id_power_noise9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE9_T;

// id_power_noise10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE10_T;

// id_power_noise11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE11_T;

// id_power_noise12
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POWER_NOISE12_T;

// id_position_freq1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ1_T;

// id_position_freq2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ2_T;

// id_position_freq3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ3_T;

// id_position_freq4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ4_T;

// id_position_freq5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ5_T;

// id_position_freq6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ6_T;

// id_position_freq7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ7_T;

// id_position_freq8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ8_T;

// id_position_freq9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ9_T;

// id_position_freq10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ10_T;

// id_position_freq11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ11_T;

// id_position_freq12
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ID_POSITION_FREQ12_T;

// id_info1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO1_T;

// id_info2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO2_T;

// id_info3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO3_T;

// id_info4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO4_T;

// id_info5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO5_T;

// id_info6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO6_T;

// id_info7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO7_T;

// id_info8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO8_T;

// id_info9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO9_T;

// id_info10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO10_T;

// id_info11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO11_T;

// id_info12
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;      // [1:0], read only
        uint32_t sfnum : 1;     // [2], read only
        uint32_t cptype : 1;    // [3], read only
        uint32_t nid1 : 8;      // [11:4], read only
        uint32_t ppm : 6;       // [17:12], read only
        uint32_t pos_slide : 4; // [21:18], read only
        uint32_t pos_index : 4; // [25:22], read only
        uint32_t __31_26 : 6;   // [31:26]
    } b;
} REG_IDDET_ID_INFO12_T;

// assist_id_power_noise1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POWER_NOISE1_T;

// assist_id_power_noise2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POWER_NOISE2_T;

// assist_id_power_noise3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POWER_NOISE3_T;

// assist_id_power_noise4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t power : 16; // [15:0], read only
        uint32_t noise : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POWER_NOISE4_T;

// assist_id_position_freq1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POSITION_FREQ1_T;

// assist_id_position_freq2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POSITION_FREQ2_T;

// assist_id_position_freq3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POSITION_FREQ3_T;

// assist_id_position_freq4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t postion : 14;     // [13:0], read only
        uint32_t __15_14 : 2;      // [15:14]
        uint32_t freq_offset : 16; // [31:16], read only
    } b;
} REG_IDDET_ASSIST_ID_POSITION_FREQ4_T;

// assist_id_info1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;     // [1:0], read only
        uint32_t sfnum : 1;    // [2], read only
        uint32_t cptype : 1;   // [3], read only
        uint32_t nid1 : 8;     // [11:4], read only
        uint32_t ppm : 6;      // [17:12], read only
        uint32_t __31_18 : 14; // [31:18]
    } b;
} REG_IDDET_ASSIST_ID_INFO1_T;

// assist_id_info2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;     // [1:0], read only
        uint32_t sfnum : 1;    // [2], read only
        uint32_t cptype : 1;   // [3], read only
        uint32_t nid1 : 8;     // [11:4], read only
        uint32_t ppm : 6;      // [17:12], read only
        uint32_t __31_18 : 14; // [31:18]
    } b;
} REG_IDDET_ASSIST_ID_INFO2_T;

// assist_id_info3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;     // [1:0], read only
        uint32_t sfnum : 1;    // [2], read only
        uint32_t cptype : 1;   // [3], read only
        uint32_t nid1 : 8;     // [11:4], read only
        uint32_t ppm : 6;      // [17:12], read only
        uint32_t __31_18 : 14; // [31:18]
    } b;
} REG_IDDET_ASSIST_ID_INFO3_T;

// assist_id_info4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t nid2 : 2;     // [1:0], read only
        uint32_t sfnum : 1;    // [2], read only
        uint32_t cptype : 1;   // [3], read only
        uint32_t nid1 : 8;     // [11:4], read only
        uint32_t ppm : 6;      // [17:12], read only
        uint32_t __31_18 : 14; // [31:18]
    } b;
} REG_IDDET_ASSIST_ID_INFO4_T;

// int_flag
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pssgru_finish : 1;         // [0], write clear
        uint32_t pssitm_finish : 1;         // [1], write clear
        uint32_t sss_finish : 1;            // [2], write clear
        uint32_t freq_idident_finish : 1;   // [3], write clear
        uint32_t resync_finish : 1;         // [4], write clear
        uint32_t txrx_suspend : 1;          // [5], write clear
        uint32_t error_state : 1;           // [6], write clear
        uint32_t stop : 1;                  // [7], write clear
        uint32_t rssi : 1;                  // [8], write clear
        uint32_t freq_search_sbi : 1;       // [9], write clear
        uint32_t freq_search : 1;           // [10], write clear
        uint32_t discon_section_finish : 1; // [11], write clear
        uint32_t __31_12 : 20;              // [31:12]
    } b;
} REG_IDDET_INT_FLAG_T;

// sta_flag
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss_gru_run : 1;         // [0], read only
        uint32_t pss_itm_run : 1;         // [1], read only
        uint32_t sss_run : 1;             // [2], read only
        uint32_t freqitm_idident_run : 1; // [3], read only
        uint32_t resyn_run : 1;           // [4], read only
        uint32_t freq_search_run : 1;     // [5], read only
        uint32_t __31_6 : 26;             // [31:6]
    } b;
} REG_IDDET_STA_FLAG_T;

// pre_sample_count
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pre_sample_count : 10; // [9:0]
        uint32_t __31_10 : 22;          // [31:10]
    } b;
} REG_IDDET_PRE_SAMPLE_COUNT_T;

// freq_search_ctrl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t first_5ms : 1;        // [0]
        uint32_t last_5ms : 1;         // [1]
        uint32_t freq_sel : 2;         // [3:2]
        uint32_t sort_start_addr : 10; // [13:4]
        uint32_t sort_end_addr : 10;   // [23:14]
        uint32_t sort_en : 1;          // [24]
        uint32_t fft_en : 1;           // [25]
        uint32_t sort_mode : 1;        // [26]
        uint32_t __31_27 : 5;          // [31:27]
    } b;
} REG_IDDET_FREQ_SEARCH_CTRL_T;

// freq_search_config1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t m : 4;                   // [3:0]
        uint32_t freq_200k_en : 1;        // [4]
        uint32_t freq_1_4m_en : 1;        // [5]
        uint32_t freq_3m_en : 1;          // [6]
        uint32_t freq_5m_en : 1;          // [7]
        uint32_t freq_10m_en : 1;         // [8]
        uint32_t freq_15m_en : 1;         // [9]
        uint32_t freq_20m_en : 1;         // [10]
        uint32_t sbi_max : 6;             // [16:11]
        uint32_t cur_sbi_num : 6;         // [22:17]
        uint32_t pwr_32to16bitsel : 4;    // [26:23]
        uint32_t pwrwin_32to20bitsel : 4; // [30:27]
        uint32_t __31_31 : 1;             // [31]
    } b;
} REG_IDDET_FREQ_SEARCH_CONFIG1_T;

// freq_search_config2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t selectbinnum_left : 9;  // [8:0]
        uint32_t selectbinnum_right : 9; // [17:9]
        uint32_t __31_18 : 14;           // [31:18]
    } b;
} REG_IDDET_FREQ_SEARCH_CONFIG2_T;

// band_win_start_conf1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t band_200khz : 7; // [6:0]
        uint32_t band_1_4mhz : 7; // [13:7]
        uint32_t band_3mhz : 7;   // [20:14]
        uint32_t band_5mhz : 7;   // [27:21]
        uint32_t __31_28 : 4;     // [31:28]
    } b;
} REG_IDDET_BAND_WIN_START_CONF1_T;

// band_win_start_conf2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t band_10mhz : 7; // [6:0]
        uint32_t band_15mhz : 7; // [13:7]
        uint32_t band_20mhz : 7; // [20:14]
        uint32_t __31_21 : 11;   // [31:21]
    } b;
} REG_IDDET_BAND_WIN_START_CONF2_T;

// band_win_end_conf1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t band_200khz : 4; // [3:0]
        uint32_t band_1_4mhz : 4; // [7:4]
        uint32_t band_3mhz : 4;   // [11:8]
        uint32_t band_5mhz : 4;   // [15:12]
        uint32_t band_10mhz : 4;  // [19:16]
        uint32_t band_15mhz : 4;  // [23:20]
        uint32_t band_20mhz : 4;  // [27:24]
        uint32_t __31_28 : 4;     // [31:28]
    } b;
} REG_IDDET_BAND_WIN_END_CONF1_T;

// agc_conf
typedef union {
    uint32_t v;
    struct
    {
        uint32_t agc : 7;     // [6:0]
        uint32_t __31_7 : 25; // [31:7]
    } b;
} REG_IDDET_AGC_CONF_T;

// sbi_sum__len
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sbi_sum_len : 10; // [9:0]
        uint32_t __31_10 : 22;     // [31:10]
    } b;
} REG_IDDET_SBI_SUM__LEN_T;

// target_agc
typedef union {
    uint32_t v;
    struct
    {
        uint32_t target_agc : 10; // [9:0]
        uint32_t __31_10 : 22;    // [31:10]
    } b;
} REG_IDDET_TARGET_AGC_T;

// freqitm_out1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t freq_itm_out1 : 16; // [15:0], read only
        uint32_t freq_itm_out2 : 16; // [31:16], read only
    } b;
} REG_IDDET_FREQITM_OUT1_T;

// pss1_resyn_rssi_range
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_rssi_start : 14; // [13:0]
        uint32_t __15_14 : 2;          // [15:14]
        uint32_t pss1_rssi_end : 14;   // [29:16]
        uint32_t __31_30 : 2;          // [31:30]
    } b;
} REG_IDDET_PSS1_RESYN_RSSI_RANGE_T;

// pss1_max_rssi0
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI0_T;

// pss1_max_rssi1
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI1_T;

// pss1_max_rssi2
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI2_T;

// pss1_max_rssi3
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI3_T;

// pss1_max_rssi4
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI4_T;

// pss1_max_rssi5
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI5_T;

// pss1_max_rssi6
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI6_T;

// pss1_max_rssi7
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI7_T;

// pss1_max_rssi8
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI8_T;

// pss1_max_rssi9
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI9_T;

// pss1_max_rssi10
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI10_T;

// pss1_max_rssi11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t pss1_max_rssi : 16; // [15:0], read only
        uint32_t __31_16 : 16;       // [31:16]
    } b;
} REG_IDDET_PSS1_MAX_RSSI11_T;

// mem1_8_mem1_11
typedef union {
    uint32_t v;
    struct
    {
        uint32_t mem1_8_mem1_11_2 : 10; // [9:0]
        uint32_t __15_10 : 6;           // [15:10]
        uint32_t mem1_8_mem1_11_1 : 10; // [25:16]
        uint32_t __31_26 : 6;           // [31:26]
    } b;
} REG_IDDET_MEM1_8_MEM1_11_T;

// mem_freq_pwr_before_agc
typedef union {
    uint32_t v;
    struct
    {
        uint32_t mem_freq_pwr_before_agc_0 : 16; // [15:0]
        uint32_t mem_freq_pwr_before_agc_1 : 16; // [31:16]
    } b;
} REG_IDDET_MEM_FREQ_PWR_BEFORE_AGC_T;

// mem_freq_len_agc
typedef union {
    uint32_t v;
    struct
    {
        uint32_t mem_freq_len_agc_0 : 10; // [9:0]
        uint32_t mem_freq_len_agc_1 : 9;  // [18:10]
        uint32_t __31_19 : 13;            // [31:19]
    } b;
} REG_IDDET_MEM_FREQ_LEN_AGC_T;

// iddet_start
#define IDDET_IDDET_START (1 << 0)
#define IDDET_IDDET_STOP (1 << 1)
#define IDDET_DATA_MOVE_OUT (1 << 2)
#define IDDET_TXRX_OFFSET_EN (1 << 3)
#define IDDET_FLOW_SEL(n) (((n)&0x7) << 4)
#define IDDET_REC_CONTINUITY (1 << 7)
#define IDDET_SAMPLE_NUM(n) (((n)&0xf) << 8)
#define IDDET_SAMPLE_LEN(n) (((n)&0x3fff) << 12)
#define IDDET_SAVE_LAST_PWR (1 << 26)
#define IDDET_RD_PRE_PWR (1 << 27)

// pss1_ctrl
#define IDDET_DC_EN (1 << 0)
#define IDDET_DAGC_EN (1 << 1)
#define IDDET_PSS1_CTRL_LOCALPSS_FREQ_EN(n) (((n)&0x3) << 2)
#define IDDET_PSS1_CTRL_ID_MODE_SEL(n) (((n)&0x3) << 4)
#define IDDET_PSS1_CTRL_PPM_EN (1 << 6)
#define IDDET_PSS1_CTRL_FLOW_MODE_SEL (1 << 7)
#define IDDET_PSS1_CTRL_MAX_NUM(n) (((n)&0x7) << 8)
#define IDDET_OUTPUT_NUM(n) (((n)&0xf) << 12)
#define IDDET_PSS1_CTRL_RSSI_EN (1 << 16)

// pss2_ctrl
#define IDDET_DC_EN (1 << 0)
#define IDDET_DAGC_EN (1 << 1)
#define IDDET_PSS2_CTRL_LOCALPSS_FREQ_EN (1 << 2)
#define IDDET_PSS2_CTRL_PPM_EN (1 << 3)
#define IDDET_PSS2_CTRL_POS_NUM(n) (((n)&0xf) << 4)
#define IDDET_PSS2_CTRL_RSSI_EN (1 << 8)

// sss_ctrl
#define IDDET_DC_EN (1 << 0)
#define IDDET_DAGC_EN (1 << 1)
#define IDDET_SSS_CTRL_FREQ_EN (1 << 2)
#define IDDET_IC_EN (1 << 3)
#define IDDET_SSS_CTRL_FDD_TDD_SEL (1 << 4)
#define IDDET_SSS_CTRL_ID_MODE_SEL (1 << 5)
#define IDDET_SSS_CTRL_FLOW_MODE_SEL (1 << 6)
#define IDDET_SSS_CTRL_PPM_EN (1 << 7)
#define IDDET_SSS_CTRL_POS_NUM(n) (((n)&0xf) << 8)
#define IDDET_SSS_CTRL_NID1(n) (((n)&0xff) << 12)
#define IDDET_NORMALSORT_NUM(n) (((n)&0xf) << 20)
#define IDDET_SORT_SEL (1 << 24)
#define IDDET_SSS_CTRL_POS_SLIDE_NUM(n) (((n)&0x3) << 25)
#define IDDET_SSS_CTRL_RSSI_EN (1 << 27)

// freqitm_idident_ctrl
#define IDDET_DC_EN (1 << 0)
#define IDDET_DAGC_EN (1 << 1)
#define IDDET_FREQITM_IDIDENT_CTRL_PPM_EN (1 << 2)
#define IDDET_FREQITM_EN (1 << 3)
#define IDDET_FREQITM_IDIDENT_CTRL_FREQ_EN (1 << 4)
#define IDDET_FREQITM_IDIDENT_CTRL_FDD_TDD_SEL (1 << 5)
#define IDDET_SLIDE_NUM(n) (((n)&0x7) << 8)
#define IDDET_FREQITM_IDIDENT_CTRL_POS_NUM(n) (((n)&0xf) << 12)
#define IDDET_FREQITM_IDIDENT_CTRL_POS_SLIDE_NUM(n) (((n)&0x3) << 16)
#define IDDET_FREQITM_IDIDENT_CTRL_RSSI_EN (1 << 18)

// resync_ctrl
#define IDDET_DC_EN (1 << 0)
#define IDDET_DAGC_EN (1 << 1)
#define IDDET_ID2(n) (((n)&0x3) << 2)
#define IDDET_ID1(n) (((n)&0xff) << 4)
#define IDDET_RESYNC_CTRL_MAX_NUM(n) (((n)&0x7) << 12)
#define IDDET_RESYNC_CTRL_SFNUM(n) (((n)&0x3) << 16)
#define IDDET_DATA_LEN(n) (((n)&0x7) << 18)
#define IDDET_RESYNC_CTRL_RSSI_EN (1 << 21)

// shift_ctrl0
#define IDDET_RSSI_S0(n) (((n)&0xf) << 0)
#define IDDET_PWR_ACC_S0(n) (((n)&0xf) << 4)
#define IDDET_RSSI_S1(n) (((n)&0xf) << 8)
#define IDDET_PWR_ACC_S1(n) (((n)&0xf) << 12)
#define IDDET_RSSI_S2(n) (((n)&0xf) << 16)
#define IDDET_PWR_ACC_S2(n) (((n)&0xf) << 20)
#define IDDET_RSSI_S3(n) (((n)&0xf) << 24)
#define IDDET_PWR_ACC_S3(n) (((n)&0xf) << 28)

// shift_ctrl1
#define IDDET_RSSI_S4(n) (((n)&0xf) << 0)
#define IDDET_PWR_ACC_S4(n) (((n)&0xf) << 4)
#define IDDET_RSSI_S5(n) (((n)&0xf) << 8)
#define IDDET_PWR_ACC_S5(n) (((n)&0xf) << 12)
#define IDDET_RSSI_S6(n) (((n)&0xf) << 16)
#define IDDET_PWR_ACC_S6(n) (((n)&0xf) << 20)
#define IDDET_RSSI_S7(n) (((n)&0xf) << 24)
#define IDDET_PWR_ACC_S7(n) (((n)&0xf) << 28)

// shift_ctrl2
#define IDDET_RSSI_S8(n) (((n)&0xf) << 0)
#define IDDET_PWR_ACC_S8(n) (((n)&0xf) << 4)
#define IDDET_RSSI_S9(n) (((n)&0xf) << 8)
#define IDDET_PWR_ACC_S9(n) (((n)&0xf) << 12)

// int_ctrl
#define IDDET_PSSGRU_FIN_IRQ_EN (1 << 0)
#define IDDET_PSSITM_FIN_IRQ_EN (1 << 1)
#define IDDET_SSS_FIN_IRQ_EN (1 << 2)
#define IDDET_FREQ_IDIDENT_FIN_IRQ_EN (1 << 3)
#define IDDET_RESYNC_FIN_IRQ_EN (1 << 4)
#define IDDET_TXRX_SUSPEND_IRQ_EN (1 << 5)
#define IDDET_ERROR_IRQ_EN (1 << 6)
#define IDDET_STOP (1 << 7)
#define IDDET_INT_CTRL_RSSI_EN (1 << 8)
#define IDDET_FREQ_SEARCH_IRQ_EN (1 << 9)
#define IDDET_DISCON_SECTION_FIN_IRQ_EN (1 << 10)

// pos_offset
#define IDDET_PSSITM_SSS_OFFSET_POS(n) (((n)&0x7fff) << 0)
#define IDDET_PSS1_RSSI_TH(n) (((n)&0xffff) << 16)

// sam_num_ctrl1
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl2
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl3
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl4
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl5
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl6
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl7
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl8
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl9
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// sam_num_ctrl10
#define IDDET_SAM_NUM(n) (((n)&0xff) << 0)

// end_threshold1
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold2
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold3
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold4
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold5
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold6
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold7
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold8
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold9
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// end_threshold10
#define IDDET_END_THRESHOLD0(n) (((n)&0xffff) << 0)
#define IDDET_END_THRESHOLD1(n) (((n)&0xffff) << 16)

// pssitm_id_para1
#define IDDET_PSSITM_ID_PARA1_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para2
#define IDDET_PSSITM_ID_PARA2_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para3
#define IDDET_PSSITM_ID_PARA3_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para4
#define IDDET_PSSITM_ID_PARA4_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para5
#define IDDET_PSSITM_ID_PARA5_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para6
#define IDDET_PSSITM_ID_PARA6_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para7
#define IDDET_PSSITM_ID_PARA7_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para8
#define IDDET_PSSITM_ID_PARA8_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para9
#define IDDET_PSSITM_ID_PARA9_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para10
#define IDDET_PSSITM_ID_PARA10_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para11
#define IDDET_PSSITM_ID_PARA11_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// pssitm_id_para12
#define IDDET_PSSITM_ID_PARA12_NID2(n) (((n)&0x3) << 0)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para1
#define IDDET_SSS_ID_PARA1_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA1_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA1_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para2
#define IDDET_SSS_ID_PARA2_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA2_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA2_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para3
#define IDDET_SSS_ID_PARA3_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA3_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA3_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para4
#define IDDET_SSS_ID_PARA4_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA4_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA4_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para5
#define IDDET_SSS_ID_PARA5_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA5_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA5_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para6
#define IDDET_SSS_ID_PARA6_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA6_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA6_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para7
#define IDDET_SSS_ID_PARA7_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA7_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA7_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para8
#define IDDET_SSS_ID_PARA8_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA8_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA8_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para9
#define IDDET_SSS_ID_PARA9_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA9_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA9_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para10
#define IDDET_SSS_ID_PARA10_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA10_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA10_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para11
#define IDDET_SSS_ID_PARA11_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA11_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA11_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// sss_id_para12
#define IDDET_SSS_ID_PARA12_NID2(n) (((n)&0x3) << 0)
#define IDDET_SSS_ID_PARA12_SFNUM (1 << 2)
#define IDDET_SSS_ID_PARA12_CPTYPE (1 << 3)
#define IDDET_PSSGRU_PPM(n) (((n)&0x3f) << 4)
#define IDDET_PSSGRU_FREQOFF(n) (((n)&0xffff) << 12)

// freqitm_idident_para1
#define IDDET_FREQITM_IDIDENT_PARA1_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para2
#define IDDET_FREQITM_IDIDENT_PARA2_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para3
#define IDDET_FREQITM_IDIDENT_PARA3_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para4
#define IDDET_FREQITM_IDIDENT_PARA4_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para5
#define IDDET_FREQITM_IDIDENT_PARA5_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para6
#define IDDET_FREQITM_IDIDENT_PARA6_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para7
#define IDDET_FREQITM_IDIDENT_PARA7_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para8
#define IDDET_FREQITM_IDIDENT_PARA8_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para9
#define IDDET_FREQITM_IDIDENT_PARA9_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para10
#define IDDET_FREQITM_IDIDENT_PARA10_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para11
#define IDDET_FREQITM_IDIDENT_PARA11_NID1(n) (((n)&0xff) << 0)

// freqitm_idident_para12
#define IDDET_FREQITM_IDIDENT_PARA12_NID1(n) (((n)&0xff) << 0)

// id_postion1
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion2
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion3
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion4
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion5
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion6
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion7
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion8
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion9
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion10
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion11
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// id_postion12
#define IDDET_ID_POS(n) (((n)&0x3fff) << 0)

// pss_sss_find
#define IDDET_NOIS_TH(n) (((n)&0xff) << 0)
#define IDDET_NOISTH_EN (1 << 8)
#define IDDET_P2P_WIN(n) (((n)&0x7f) << 9)
#define IDDET_WIPE_WIN(n) (((n)&0x3) << 16)
#define IDDET_ASSIST_WIN(n) (((n)&0x3) << 18)
#define IDDET_NOIS_WIN(n) (((n)&0x3) << 20)
#define IDDET_FIND_WIN(n) (((n)&0xf) << 24)

// freq_pssgru1
#define IDDET_FREQ_PSSGRU0(n) (((n)&0x3ff) << 0)
#define IDDET_FREQ_PSSGRU1(n) (((n)&0x3ff) << 10)
#define IDDET_FREQ_PSSGRU2(n) (((n)&0x3ff) << 20)

// freq_pssgru2
#define IDDET_FREQ_PSSGRU3(n) (((n)&0x3ff) << 0)
#define IDDET_FREQ_PSSGRU4(n) (((n)&0x3ff) << 10)

// freq_pssitm1
#define IDDET_FREQ_PSSITM(n) (((n)&0x1fff) << 0)

// freq_pssitm2
#define IDDET_FREQ_PSSITM(n) (((n)&0x1fff) << 0)

// freq_pssitm3
#define IDDET_FREQ_PSSITM(n) (((n)&0x1fff) << 0)

// freq_pssitm4
#define IDDET_FREQ_PSSITM(n) (((n)&0x1fff) << 0)

// ppm_gru_cfg1
#define IDDET_PPM0(n) (((n)&0x3f) << 0)
#define IDDET_PPM1(n) (((n)&0x3f) << 8)

// ppm_gru_cfg2
#define IDDET_PPM0(n) (((n)&0x3f) << 0)
#define IDDET_PPM1(n) (((n)&0x3f) << 8)

// ppm_gru_cfg3
#define IDDET_PPM0(n) (((n)&0x3f) << 0)
#define IDDET_PPM1(n) (((n)&0x3f) << 8)

// ppm_gru_cfg4
#define IDDET_PPM0(n) (((n)&0x3f) << 0)
#define IDDET_PPM1(n) (((n)&0x3f) << 8)

// ppm_gru_cfg5
#define IDDET_PPM0(n) (((n)&0x3f) << 0)
#define IDDET_PPM1(n) (((n)&0x3f) << 8)

// ppm_delt_cfg
#define IDDET_DELT_PPM0(n) (((n)&0xf) << 0)
#define IDDET_DELT_PPM1(n) (((n)&0xf) << 4)
#define IDDET_DELT_PPM2(n) (((n)&0xf) << 8)
#define IDDET_DELT_PPM3(n) (((n)&0xf) << 12)

// fft_cut
#define IDDET_LNUM_MOD1(n) (((n)&0xf) << 0)
#define IDDET_LNUM_MOD2(n) (((n)&0xf) << 4)

// ic_id_para
#define IDDET_IC_ID_PARA_NID1(n) (((n)&0xff) << 0)
#define IDDET_IC_ID_PARA_NID2(n) (((n)&0x3) << 8)
#define IDDET_IC_ID_PARA_SFNUM (1 << 10)
#define IDDET_IC_ID_PARA_CPTYPE (1 << 11)
#define IDDET_FREQ_OFF(n) (((n)&0xffff) << 12)
#define IDDET_FREQ_OFF_EN (1 << 28)

// ic_cfg
#define IDDET_IC_SHIFT(n) (((n)&0xf) << 0)
#define IDDET_SSSIC_POS(n) (((n)&0x3fff) << 4)
#define IDDET_IC_PPM(n) (((n)&0x3f) << 18)

// freqitm_out0
#define IDDET_FREQ_ITM_OUT0(n) (((n)&0xffff) << 0)

// valid_node
#define IDDET_VALID_NODE0(n) (((n)&0xf) << 0)
#define IDDET_VALID_NODE1(n) (((n)&0xf) << 4)

// sample_sum
#define IDDET_SAMPLE_SUM(n) (((n)&0xff) << 0)

// rssi
#define IDDET_RSSI_RSSI(n) (((n)&0xffff) << 0)

// id_power_noise1
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise2
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise3
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise4
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise5
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise6
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise7
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise8
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise9
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise10
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise11
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_power_noise12
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// id_position_freq1
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq2
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq3
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq4
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq5
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq6
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq7
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq8
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq9
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq10
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq11
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_position_freq12
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// id_info1
#define IDDET_ID_INFO1_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO1_SFNUM (1 << 2)
#define IDDET_ID_INFO1_CPTYPE (1 << 3)
#define IDDET_ID_INFO1_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info2
#define IDDET_ID_INFO2_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO2_SFNUM (1 << 2)
#define IDDET_ID_INFO2_CPTYPE (1 << 3)
#define IDDET_ID_INFO2_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info3
#define IDDET_ID_INFO3_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO3_SFNUM (1 << 2)
#define IDDET_ID_INFO3_CPTYPE (1 << 3)
#define IDDET_ID_INFO3_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info4
#define IDDET_ID_INFO4_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO4_SFNUM (1 << 2)
#define IDDET_ID_INFO4_CPTYPE (1 << 3)
#define IDDET_ID_INFO4_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info5
#define IDDET_ID_INFO5_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO5_SFNUM (1 << 2)
#define IDDET_ID_INFO5_CPTYPE (1 << 3)
#define IDDET_ID_INFO5_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info6
#define IDDET_ID_INFO6_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO6_SFNUM (1 << 2)
#define IDDET_ID_INFO6_CPTYPE (1 << 3)
#define IDDET_ID_INFO6_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info7
#define IDDET_ID_INFO7_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO7_SFNUM (1 << 2)
#define IDDET_ID_INFO7_CPTYPE (1 << 3)
#define IDDET_ID_INFO7_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info8
#define IDDET_ID_INFO8_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO8_SFNUM (1 << 2)
#define IDDET_ID_INFO8_CPTYPE (1 << 3)
#define IDDET_ID_INFO8_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info9
#define IDDET_ID_INFO9_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO9_SFNUM (1 << 2)
#define IDDET_ID_INFO9_CPTYPE (1 << 3)
#define IDDET_ID_INFO9_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info10
#define IDDET_ID_INFO10_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO10_SFNUM (1 << 2)
#define IDDET_ID_INFO10_CPTYPE (1 << 3)
#define IDDET_ID_INFO10_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info11
#define IDDET_ID_INFO11_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO11_SFNUM (1 << 2)
#define IDDET_ID_INFO11_CPTYPE (1 << 3)
#define IDDET_ID_INFO11_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// id_info12
#define IDDET_ID_INFO12_NID2(n) (((n)&0x3) << 0)
#define IDDET_ID_INFO12_SFNUM (1 << 2)
#define IDDET_ID_INFO12_CPTYPE (1 << 3)
#define IDDET_ID_INFO12_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)
#define IDDET_POS_SLIDE(n) (((n)&0xf) << 18)
#define IDDET_POS_INDEX(n) (((n)&0xf) << 22)

// assist_id_power_noise1
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// assist_id_power_noise2
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// assist_id_power_noise3
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// assist_id_power_noise4
#define IDDET_POWER(n) (((n)&0xffff) << 0)
#define IDDET_NOISE(n) (((n)&0xffff) << 16)

// assist_id_position_freq1
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// assist_id_position_freq2
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// assist_id_position_freq3
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// assist_id_position_freq4
#define IDDET_POSTION(n) (((n)&0x3fff) << 0)
#define IDDET_FREQ_OFFSET(n) (((n)&0xffff) << 16)

// assist_id_info1
#define IDDET_ASSIST_ID_INFO1_NID2(n) (((n)&0x3) << 0)
#define IDDET_ASSIST_ID_INFO1_SFNUM (1 << 2)
#define IDDET_ASSIST_ID_INFO1_CPTYPE (1 << 3)
#define IDDET_ASSIST_ID_INFO1_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)

// assist_id_info2
#define IDDET_ASSIST_ID_INFO2_NID2(n) (((n)&0x3) << 0)
#define IDDET_ASSIST_ID_INFO2_SFNUM (1 << 2)
#define IDDET_ASSIST_ID_INFO2_CPTYPE (1 << 3)
#define IDDET_ASSIST_ID_INFO2_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)

// assist_id_info3
#define IDDET_ASSIST_ID_INFO3_NID2(n) (((n)&0x3) << 0)
#define IDDET_ASSIST_ID_INFO3_SFNUM (1 << 2)
#define IDDET_ASSIST_ID_INFO3_CPTYPE (1 << 3)
#define IDDET_ASSIST_ID_INFO3_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)

// assist_id_info4
#define IDDET_ASSIST_ID_INFO4_NID2(n) (((n)&0x3) << 0)
#define IDDET_ASSIST_ID_INFO4_SFNUM (1 << 2)
#define IDDET_ASSIST_ID_INFO4_CPTYPE (1 << 3)
#define IDDET_ASSIST_ID_INFO4_NID1(n) (((n)&0xff) << 4)
#define IDDET_PPM(n) (((n)&0x3f) << 12)

// int_flag
#define IDDET_PSSGRU_FINISH (1 << 0)
#define IDDET_PSSITM_FINISH (1 << 1)
#define IDDET_SSS_FINISH (1 << 2)
#define IDDET_FREQ_IDIDENT_FINISH (1 << 3)
#define IDDET_RESYNC_FINISH (1 << 4)
#define IDDET_TXRX_SUSPEND (1 << 5)
#define IDDET_ERROR_STATE (1 << 6)
#define IDDET_STOP (1 << 7)
#define IDDET_INT_FLAG_RSSI (1 << 8)
#define IDDET_FREQ_SEARCH_SBI (1 << 9)
#define IDDET_FREQ_SEARCH (1 << 10)
#define IDDET_DISCON_SECTION_FINISH (1 << 11)

// sta_flag
#define IDDET_PSS_GRU_RUN (1 << 0)
#define IDDET_PSS_ITM_RUN (1 << 1)
#define IDDET_SSS_RUN (1 << 2)
#define IDDET_FREQITM_IDIDENT_RUN (1 << 3)
#define IDDET_RESYN_RUN (1 << 4)
#define IDDET_FREQ_SEARCH_RUN (1 << 5)

// pre_sample_count
#define IDDET_PRE_SAMPLE_COUNT(n) (((n)&0x3ff) << 0)

// freq_search_ctrl
#define IDDET_FIRST_5MS (1 << 0)
#define IDDET_LAST_5MS (1 << 1)
#define IDDET_FREQ_SEL(n) (((n)&0x3) << 2)
#define IDDET_SORT_START_ADDR(n) (((n)&0x3ff) << 4)
#define IDDET_SORT_END_ADDR(n) (((n)&0x3ff) << 14)
#define IDDET_SORT_EN (1 << 24)
#define IDDET_FFT_EN (1 << 25)
#define IDDET_SORT_MODE (1 << 26)

// freq_search_config1
#define IDDET_M(n) (((n)&0xf) << 0)
#define IDDET_FREQ_200K_EN (1 << 4)
#define IDDET_FREQ_1_4M_EN (1 << 5)
#define IDDET_FREQ_3M_EN (1 << 6)
#define IDDET_FREQ_5M_EN (1 << 7)
#define IDDET_FREQ_10M_EN (1 << 8)
#define IDDET_FREQ_15M_EN (1 << 9)
#define IDDET_FREQ_20M_EN (1 << 10)
#define IDDET_SBI_MAX(n) (((n)&0x3f) << 11)
#define IDDET_CUR_SBI_NUM(n) (((n)&0x3f) << 17)
#define IDDET_PWR_32TO16BITSEL(n) (((n)&0xf) << 23)
#define IDDET_PWRWIN_32TO20BITSEL(n) (((n)&0xf) << 27)

// freq_search_config2
#define IDDET_SELECTBINNUM_LEFT(n) (((n)&0x1ff) << 0)
#define IDDET_SELECTBINNUM_RIGHT(n) (((n)&0x1ff) << 9)

// band_win_start_conf1
#define IDDET_BAND_WIN_START_CONF1_BAND_200KHZ(n) (((n)&0x7f) << 0)
#define IDDET_BAND_WIN_START_CONF1_BAND_1_4MHZ(n) (((n)&0x7f) << 7)
#define IDDET_BAND_WIN_START_CONF1_BAND_3MHZ(n) (((n)&0x7f) << 14)
#define IDDET_BAND_WIN_START_CONF1_BAND_5MHZ(n) (((n)&0x7f) << 21)

// band_win_start_conf2
#define IDDET_BAND_WIN_START_CONF2_BAND_10MHZ(n) (((n)&0x7f) << 0)
#define IDDET_BAND_WIN_START_CONF2_BAND_15MHZ(n) (((n)&0x7f) << 7)
#define IDDET_BAND_WIN_START_CONF2_BAND_20MHZ(n) (((n)&0x7f) << 14)

// band_win_end_conf1
#define IDDET_BAND_WIN_END_CONF1_BAND_200KHZ(n) (((n)&0xf) << 0)
#define IDDET_BAND_WIN_END_CONF1_BAND_1_4MHZ(n) (((n)&0xf) << 4)
#define IDDET_BAND_WIN_END_CONF1_BAND_3MHZ(n) (((n)&0xf) << 8)
#define IDDET_BAND_WIN_END_CONF1_BAND_5MHZ(n) (((n)&0xf) << 12)
#define IDDET_BAND_WIN_END_CONF1_BAND_10MHZ(n) (((n)&0xf) << 16)
#define IDDET_BAND_WIN_END_CONF1_BAND_15MHZ(n) (((n)&0xf) << 20)
#define IDDET_BAND_WIN_END_CONF1_BAND_20MHZ(n) (((n)&0xf) << 24)

// agc_conf
#define IDDET_AGC(n) (((n)&0x7f) << 0)

// sbi_sum__len
#define IDDET_SBI_SUM_LEN(n) (((n)&0x3ff) << 0)

// target_agc
#define IDDET_TARGET_AGC(n) (((n)&0x3ff) << 0)

// freqitm_out1
#define IDDET_FREQ_ITM_OUT1(n) (((n)&0xffff) << 0)
#define IDDET_FREQ_ITM_OUT2(n) (((n)&0xffff) << 16)

// pss1_resyn_rssi_range
#define IDDET_PSS1_RSSI_START(n) (((n)&0x3fff) << 0)
#define IDDET_PSS1_RSSI_END(n) (((n)&0x3fff) << 16)

// pss1_max_rssi0
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi1
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi2
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi3
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi4
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi5
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi6
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi7
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi8
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi9
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi10
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// pss1_max_rssi11
#define IDDET_PSS1_MAX_RSSI(n) (((n)&0xffff) << 0)

// mem1_8_mem1_11
#define IDDET_MEM1_8_MEM1_11_2(n) (((n)&0x3ff) << 0)
#define IDDET_MEM1_8_MEM1_11_1(n) (((n)&0x3ff) << 16)

// mem_freq_pwr_before_agc
#define IDDET_MEM_FREQ_PWR_BEFORE_AGC_0(n) (((n)&0xffff) << 0)
#define IDDET_MEM_FREQ_PWR_BEFORE_AGC_1(n) (((n)&0xffff) << 16)

// mem_freq_len_agc
#define IDDET_MEM_FREQ_LEN_AGC_0(n) (((n)&0x3ff) << 0)
#define IDDET_MEM_FREQ_LEN_AGC_1(n) (((n)&0x1ff) << 10)

#endif // _IDDET_H_
