/* 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 _USBC_H_
#define _USBC_H_

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

#define REG_USBC_BASE (0x02100000)

typedef volatile struct
{
    uint32_t otg_pai;               // 0x00000000
    uint32_t otg_intrx_inttxen;     // 0x00000004
    uint32_t otg_intrxen_usb;       // 0x00000008
    uint32_t otg_fit;               // 0x0000000c
    uint32_t otg_csr0;              // 0x00000010
    uint32_t __20[1];               // 0x00000014
    uint32_t otg_rxcnt_txtype0;     // 0x00000018
    uint32_t otg_cfg;               // 0x0000001c
    uint32_t __32[16];              // 0x00000020
    uint32_t otg_devctl;            // 0x00000060
    uint32_t otg_fa;                // 0x00000064
    uint32_t __104[1];              // 0x00000068
    uint32_t otg_hwver;             // 0x0000006c
    uint32_t __112[2];              // 0x00000070
    uint32_t otg_info;              // 0x00000078
    uint32_t otg_eof;               // 0x0000007c
    uint32_t otg_ep0_txfad_had_hp;  // 0x00000080
    uint32_t otg_ep0_rxfad_had_hp;  // 0x00000084
    uint32_t otg_ep1_txfad_had_hp;  // 0x00000088
    uint32_t otg_ep1_rxfad_had_hp;  // 0x0000008c
    uint32_t otg_ep2_txfad_had_hp;  // 0x00000090
    uint32_t otg_ep2_rxfad_had_hp;  // 0x00000094
    uint32_t otg_ep3_txfad_had_hp;  // 0x00000098
    uint32_t otg_ep3_rxfad_had_hp;  // 0x0000009c
    uint32_t otg_ep4_txfad_had_hp;  // 0x000000a0
    uint32_t otg_ep4_rxfad_had_hp;  // 0x000000a4
    uint32_t otg_ep5_txfad_had_hp;  // 0x000000a8
    uint32_t otg_ep5_rxfad_had_hp;  // 0x000000ac
    uint32_t otg_ep6_txfad_had_hp;  // 0x000000b0
    uint32_t otg_ep6_rxfad_had_hp;  // 0x000000b4
    uint32_t otg_ep7_txfad_had_hp;  // 0x000000b8
    uint32_t otg_ep7_rxfad_had_hp;  // 0x000000bc
    uint32_t otg_ep8_txfad_had_hp;  // 0x000000c0
    uint32_t otg_ep8_rxfad_had_hp;  // 0x000000c4
    uint32_t otg_ep9_txfad_had_hp;  // 0x000000c8
    uint32_t otg_ep9_rxfad_had_hp;  // 0x000000cc
    uint32_t otg_ep10_txfad_had_hp; // 0x000000d0
    uint32_t otg_ep10_rxfad_had_hp; // 0x000000d4
    uint32_t otg_ep11_txfad_had_hp; // 0x000000d8
    uint32_t otg_ep11_rxfad_had_hp; // 0x000000dc
    uint32_t otg_ep12_txfad_had_hp; // 0x000000e0
    uint32_t otg_ep12_rxfad_had_hp; // 0x000000e4
    uint32_t otg_ep13_txfad_had_hp; // 0x000000e8
    uint32_t otg_ep13_rxfad_had_hp; // 0x000000ec
    uint32_t otg_ep14_txfad_had_hp; // 0x000000f0
    uint32_t otg_ep14_rxfad_had_hp; // 0x000000f4
    uint32_t otg_ep15_txfad_had_hp; // 0x000000f8
    uint32_t otg_ep15_rxfad_had_hp; // 0x000000fc
    uint32_t __256[4];              // 0x00000100
    uint32_t reg_ep1_txmaxp_csr;    // 0x00000110
    uint32_t reg_ep1_rxmaxp_csr;    // 0x00000114
    uint32_t reg_ep1_rxcnt_txtype;  // 0x00000118
    uint32_t reg_ep1_rxtype_intv;   // 0x0000011c
    uint32_t reg_ep2_txmaxp_csr;    // 0x00000120
    uint32_t reg_ep2_rxmaxp_csr;    // 0x00000124
    uint32_t reg_ep2_rxcnt_txtype;  // 0x00000128
    uint32_t reg_ep2_rxtype_intv;   // 0x0000012c
    uint32_t reg_ep3_txmaxp_csr;    // 0x00000130
    uint32_t reg_ep3_rxmaxp_csr;    // 0x00000134
    uint32_t reg_ep3_rxcnt_txtype;  // 0x00000138
    uint32_t reg_ep3_rxtype_intv;   // 0x0000013c
    uint32_t reg_ep4_txmaxp_csr;    // 0x00000140
    uint32_t reg_ep4_rxmaxp_csr;    // 0x00000144
    uint32_t reg_ep4_rxcnt_txtype;  // 0x00000148
    uint32_t reg_ep4_rxtype_intv;   // 0x0000014c
    uint32_t reg_ep5_txmaxp_csr;    // 0x00000150
    uint32_t reg_ep5_rxmaxp_csr;    // 0x00000154
    uint32_t reg_ep5_rxcnt_txtype;  // 0x00000158
    uint32_t reg_ep5_rxtype_intv;   // 0x0000015c
    uint32_t reg_ep6_txmaxp_csr;    // 0x00000160
    uint32_t reg_ep6_rxmaxp_csr;    // 0x00000164
    uint32_t reg_ep6_rxcnt_txtype;  // 0x00000168
    uint32_t reg_ep6_rxtype_intv;   // 0x0000016c
    uint32_t reg_ep7_txmaxp_csr;    // 0x00000170
    uint32_t reg_ep7_rxmaxp_csr;    // 0x00000174
    uint32_t reg_ep7_rxcnt_txtype;  // 0x00000178
    uint32_t reg_ep7_rxtype_intv;   // 0x0000017c
    uint32_t reg_ep8_txmaxp_csr;    // 0x00000180
    uint32_t reg_ep8_rxmaxp_csr;    // 0x00000184
    uint32_t reg_ep8_rxcnt_txtype;  // 0x00000188
    uint32_t reg_ep8_rxtype_intv;   // 0x0000018c
    uint32_t reg_ep9_txmaxp_csr;    // 0x00000190
    uint32_t reg_ep9_rxmaxp_csr;    // 0x00000194
    uint32_t reg_ep9_rxcnt_txtype;  // 0x00000198
    uint32_t reg_ep9_rxtype_intv;   // 0x0000019c
    uint32_t reg_ep10_txmaxp_csr;   // 0x000001a0
    uint32_t reg_ep10_rxmaxp_csr;   // 0x000001a4
    uint32_t reg_ep10_rxcnt_txtype; // 0x000001a8
    uint32_t reg_ep10_rxtype_intv;  // 0x000001ac
    uint32_t reg_ep11_txmaxp_csr;   // 0x000001b0
    uint32_t reg_ep11_rxmaxp_csr;   // 0x000001b4
    uint32_t reg_ep11_rxcnt_txtype; // 0x000001b8
    uint32_t reg_ep11_rxtype_intv;  // 0x000001bc
    uint32_t reg_ep12_txmaxp_csr;   // 0x000001c0
    uint32_t reg_ep12_rxmaxp_csr;   // 0x000001c4
    uint32_t reg_ep12_rxcnt_txtype; // 0x000001c8
    uint32_t reg_ep12_rxtype_intv;  // 0x000001cc
    uint32_t reg_ep13_txmaxp_csr;   // 0x000001d0
    uint32_t reg_ep13_rxmaxp_csr;   // 0x000001d4
    uint32_t reg_ep13_rxcnt_txtype; // 0x000001d8
    uint32_t reg_ep13_rxtype_intv;  // 0x000001dc
    uint32_t reg_ep14_txmaxp_csr;   // 0x000001e0
    uint32_t reg_ep14_rxmaxp_csr;   // 0x000001e4
    uint32_t reg_ep14_rxcnt_txtype; // 0x000001e8
    uint32_t reg_ep14_rxtype_intv;  // 0x000001ec
    uint32_t reg_ep15_txmaxp_csr;   // 0x000001f0
    uint32_t reg_ep15_rxmaxp_csr;   // 0x000001f4
    uint32_t reg_ep15_rxcnt_txtype; // 0x000001f8
    uint32_t reg_ep15_rxtype_intv;  // 0x000001fc
    uint32_t __512[64];             // 0x00000200
    uint32_t otg_ep0_rxpktcnt;      // 0x00000300
    uint32_t otg_ep1_rxpktcnt;      // 0x00000304
    uint32_t otg_ep2_rxpktcnt;      // 0x00000308
    uint32_t otg_ep3_rxpktcnt;      // 0x0000030c
    uint32_t otg_ep4_rxpktcnt;      // 0x00000310
    uint32_t otg_ep5_rxpktcnt;      // 0x00000314
    uint32_t otg_ep6_rxpktcnt;      // 0x00000318
    uint32_t otg_ep7_rxpktcnt;      // 0x0000031c
    uint32_t otg_ep8_rxpktcnt;      // 0x00000320
    uint32_t otg_ep9_rxpktcnt;      // 0x00000324
    uint32_t otg_ep10_rxpktcnt;     // 0x00000328
    uint32_t otg_ep11_rxpktcnt;     // 0x0000032c
    uint32_t otg_ep12_rxpktcnt;     // 0x00000330
    uint32_t otg_ep13_rxpktcnt;     // 0x00000334
    uint32_t otg_ep14_rxpktcnt;     // 0x00000338
    uint32_t otg_ep15_rxpktcnt;     // 0x0000033c
    uint32_t otg_rxdbdis_txdbdis;   // 0x00000340
    uint32_t otg_uch_hsrtn;         // 0x00000344
    uint32_t otg_hsbt_fifo;         // 0x00000348
    uint32_t otg_listend_int_sts;   // 0x0000034c
    uint32_t otg_listend_int_clr;   // 0x00000350
    uint32_t otg_endpoint_en;       // 0x00000354
} HWP_USBC_T;

#define hwp_usbc ((HWP_USBC_T *)REG_ACCESS_ADDRESS(REG_USBC_BASE))

// otg_pai
typedef union {
    uint32_t v;
    struct
    {
        uint32_t func_addr : 7; // [6:0]
        uint32_t __7_7 : 1;     // [7]
        uint32_t suspm : 1;     // [8]
        uint32_t susp : 1;      // [9], read only
        uint32_t rsm : 1;       // [10]
        uint32_t rst : 1;       // [11], read only
        uint32_t hsmd : 1;      // [12], read only
        uint32_t hsen : 1;      // [13]
        uint32_t sfcn : 1;      // [14]
        uint32_t __15_15 : 1;   // [15]
        uint32_t ep : 16;       // [31:16], read only
    } b;
} REG_USBC_OTG_PAI_T;

// otg_intrx_inttxen
typedef union {
    uint32_t v;
    struct
    {
        uint32_t __0_0 : 1;  // [0]
        uint32_t rx_ep : 15; // [15:1], read only
        uint32_t tx_ep : 16; // [31:16], read only
    } b;
} REG_USBC_OTG_INTRX_INTTXEN_T;

// otg_intrxen_usb
typedef union {
    uint32_t v;
    struct
    {
        uint32_t __0_0 : 1;  // [0]
        uint32_t rx_ep : 15; // [15:1], read only
        uint32_t susp : 1;   // [16], read only
        uint32_t res : 1;    // [17], read only
        uint32_t rst : 1;    // [18], read only
        uint32_t sof : 1;    // [19], read only
        uint32_t conn : 1;   // [20], read only
        uint32_t discon : 1; // [21], read only
        uint32_t sreq : 1;   // [22], read only
        uint32_t vbe : 1;    // [23], read only
        uint32_t sspen : 1;  // [24]
        uint32_t resen : 1;  // [25]
        uint32_t rsten : 1;  // [26]
        uint32_t sofen : 1;  // [27]
        uint32_t conen : 1;  // [28]
        uint32_t dscen : 1;  // [29]
        uint32_t sreqen : 1; // [30]
        uint32_t vben : 1;   // [31]
    } b;
} REG_USBC_OTG_INTRXEN_USB_T;

// otg_fit
typedef union {
    uint32_t v;
    struct
    {
        uint32_t fmno : 11;   // [10:0], read only
        uint32_t __15_11 : 5; // [15:11]
        uint32_t epno : 4;    // [19:16]
        uint32_t __23_20 : 4; // [23:20]
        uint32_t tstnak : 1;  // [24]
        uint32_t tstj : 1;    // [25]
        uint32_t tstk : 1;    // [26]
        uint32_t tstpkt : 1;  // [27]
        uint32_t fhs : 1;     // [28]
        uint32_t ffs : 1;     // [29]
        uint32_t fifoa : 1;   // [30]
        uint32_t frh : 1;     // [31]
    } b;
} REG_USBC_OTG_FIT_T;

// otg_csr0
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11;   // [10:0]
        uint32_t mult : 5;    // [15:11]
        uint32_t rrdy : 1;    // [16]
        uint32_t trdy : 1;    // [17]
        uint32_t rsta : 1;    // [18]
        uint32_t sp : 1;      // [19]
        uint32_t err : 1;     // [20]
        uint32_t rep : 1;     // [21]
        uint32_t stp : 1;     // [22]
        uint32_t nakto : 1;   // [23]
        uint32_t ff : 1;      // [24]
        uint32_t dt : 1;      // [25]
        uint32_t dtwe : 1;    // [26]
        uint32_t disp : 1;    // [27]
        uint32_t __31_28 : 4; // [31:28]
    } b;
} REG_USBC_OTG_CSR0_T;

// otg_rxcnt_txtype0
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt0 : 7;   // [6:0], read only
        uint32_t __21_7 : 15;  // [21:7]
        uint32_t speed : 2;    // [23:22], read only
        uint32_t naklimit : 4; // [27:24]
        uint32_t __31_28 : 4;  // [31:28]
    } b;
} REG_USBC_OTG_RXCNT_TXTYPE0_T;

// otg_cfg
typedef union {
    uint32_t v;
    struct
    {
        uint32_t __23_0 : 24; // [23:0]
        uint32_t udi : 1;     // [24], read only
        uint32_t sc : 1;      // [25], read only
        uint32_t dynf : 1;    // [26], read only
        uint32_t hbtxe : 1;   // [27], read only
        uint32_t hbrxe : 1;   // [28], read only
        uint32_t be : 1;      // [29], read only
        uint32_t mptxe : 1;   // [30], read only
        uint32_t mprxe : 1;   // [31], read only
    } b;
} REG_USBC_OTG_CFG_T;

// otg_devctl
typedef union {
    uint32_t v;
    struct
    {
        uint32_t sess : 1;      // [0]
        uint32_t hreq : 1;      // [1]
        uint32_t host : 1;      // [2], read only
        uint32_t vbus : 2;      // [4:3], read only
        uint32_t lsdev : 1;     // [5], read only
        uint32_t fsdev : 1;     // [6], read only
        uint32_t bdev : 1;      // [7], read only
        uint32_t dmainter : 1;  // [8], read only
        uint32_t ctrlinter : 1; // [9], read only
        uint32_t __15_10 : 6;   // [15:10]
        uint32_t txsize : 4;    // [19:16]
        uint32_t txdpb : 1;     // [20]
        uint32_t __23_21 : 3;   // [23:21]
        uint32_t rxsize : 4;    // [27:24]
        uint32_t rxdpb : 1;     // [28]
        uint32_t __31_29 : 3;   // [31:29]
    } b;
} REG_USBC_OTG_DEVCTL_T;

// otg_fa
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txad : 13;   // [12:0]
        uint32_t __15_13 : 3; // [15:13]
        uint32_t rxad : 13;   // [28:16]
        uint32_t __31_29 : 3; // [31:29]
    } b;
} REG_USBC_OTG_FA_T;

// otg_hwver
typedef union {
    uint32_t v;
    struct
    {
        uint32_t vmin : 10;    // [9:0], read only
        uint32_t vmaj : 5;     // [14:10], read only
        uint32_t __31_15 : 17; // [31:15]
    } b;
} REG_USBC_OTG_HWVER_T;

// otg_info
typedef union {
    uint32_t v;
    struct
    {
        uint32_t tx_ep : 4;    // [3:0], read only
        uint32_t rx_ep : 4;    // [7:4], read only
        uint32_t ram_bits : 4; // [11:8], read only
        uint32_t dma_ch : 4;   // [15:12], read only
        uint32_t wtid : 4;     // [19:16]
        uint32_t wtcon : 4;    // [23:20]
        uint32_t vplen : 8;    // [31:24]
    } b;
} REG_USBC_OTG_INFO_T;

// otg_eof
typedef union {
    uint32_t v;
    struct
    {
        uint32_t hs_eof1 : 8; // [7:0]
        uint32_t fs_eof1 : 8; // [15:8]
        uint32_t ls_eof1 : 8; // [23:16]
        uint32_t rst : 1;     // [24]
        uint32_t rstx : 1;    // [25]
        uint32_t __31_26 : 6; // [31:26]
    } b;
} REG_USBC_OTG_EOF_T;

// otg_ep0_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP0_TXFAD_HAD_HP_T;

// otg_ep0_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP0_RXFAD_HAD_HP_T;

// otg_ep1_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP1_TXFAD_HAD_HP_T;

// otg_ep1_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP1_RXFAD_HAD_HP_T;

// otg_ep2_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP2_TXFAD_HAD_HP_T;

// otg_ep2_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP2_RXFAD_HAD_HP_T;

// otg_ep3_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP3_TXFAD_HAD_HP_T;

// otg_ep3_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP3_RXFAD_HAD_HP_T;

// otg_ep4_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP4_TXFAD_HAD_HP_T;

// otg_ep4_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP4_RXFAD_HAD_HP_T;

// otg_ep5_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP5_TXFAD_HAD_HP_T;

// otg_ep5_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP5_RXFAD_HAD_HP_T;

// otg_ep6_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP6_TXFAD_HAD_HP_T;

// otg_ep6_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP6_RXFAD_HAD_HP_T;

// otg_ep7_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP7_TXFAD_HAD_HP_T;

// otg_ep7_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP7_RXFAD_HAD_HP_T;

// otg_ep8_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP8_TXFAD_HAD_HP_T;

// otg_ep8_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP8_RXFAD_HAD_HP_T;

// otg_ep9_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP9_TXFAD_HAD_HP_T;

// otg_ep9_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP9_RXFAD_HAD_HP_T;

// otg_ep10_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP10_TXFAD_HAD_HP_T;

// otg_ep10_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP10_RXFAD_HAD_HP_T;

// otg_ep11_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP11_TXFAD_HAD_HP_T;

// otg_ep11_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP11_RXFAD_HAD_HP_T;

// otg_ep12_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP12_TXFAD_HAD_HP_T;

// otg_ep12_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP12_RXFAD_HAD_HP_T;

// otg_ep13_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP13_TXFAD_HAD_HP_T;

// otg_ep13_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP13_RXFAD_HAD_HP_T;

// otg_ep14_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP14_TXFAD_HAD_HP_T;

// otg_ep14_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP14_RXFAD_HAD_HP_T;

// otg_ep15_txfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t txfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t txhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t txhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP15_TXFAD_HAD_HP_T;

// otg_ep15_rxfad_had_hp
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxfad : 7;    // [6:0]
        uint32_t __15_7 : 9;   // [15:7]
        uint32_t rxhad : 7;    // [22:16]
        uint32_t multiple : 1; // [23]
        uint32_t rxhp : 7;     // [30:24]
        uint32_t __31_31 : 1;  // [31]
    } b;
} REG_USBC_OTG_EP15_RXFAD_HAD_HP_T;

// reg_ep1_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP1_TXMAXP_CSR_T;

// reg_ep1_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP1_RXMAXP_CSR_T;

// reg_ep1_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP1_RXCNT_TXTYPE_T;

// reg_ep1_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP1_RXTYPE_INTV_T;

// reg_ep2_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP2_TXMAXP_CSR_T;

// reg_ep2_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP2_RXMAXP_CSR_T;

// reg_ep2_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP2_RXCNT_TXTYPE_T;

// reg_ep2_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP2_RXTYPE_INTV_T;

// reg_ep3_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP3_TXMAXP_CSR_T;

// reg_ep3_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP3_RXMAXP_CSR_T;

// reg_ep3_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP3_RXCNT_TXTYPE_T;

// reg_ep3_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP3_RXTYPE_INTV_T;

// reg_ep4_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP4_TXMAXP_CSR_T;

// reg_ep4_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP4_RXMAXP_CSR_T;

// reg_ep4_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP4_RXCNT_TXTYPE_T;

// reg_ep4_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP4_RXTYPE_INTV_T;

// reg_ep5_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP5_TXMAXP_CSR_T;

// reg_ep5_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP5_RXMAXP_CSR_T;

// reg_ep5_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP5_RXCNT_TXTYPE_T;

// reg_ep5_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP5_RXTYPE_INTV_T;

// reg_ep6_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP6_TXMAXP_CSR_T;

// reg_ep6_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP6_RXMAXP_CSR_T;

// reg_ep6_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP6_RXCNT_TXTYPE_T;

// reg_ep6_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP6_RXTYPE_INTV_T;

// reg_ep7_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP7_TXMAXP_CSR_T;

// reg_ep7_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP7_RXMAXP_CSR_T;

// reg_ep7_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP7_RXCNT_TXTYPE_T;

// reg_ep7_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP7_RXTYPE_INTV_T;

// reg_ep8_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP8_TXMAXP_CSR_T;

// reg_ep8_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP8_RXMAXP_CSR_T;

// reg_ep8_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP8_RXCNT_TXTYPE_T;

// reg_ep8_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP8_RXTYPE_INTV_T;

// reg_ep9_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP9_TXMAXP_CSR_T;

// reg_ep9_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP9_RXMAXP_CSR_T;

// reg_ep9_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP9_RXCNT_TXTYPE_T;

// reg_ep9_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP9_RXTYPE_INTV_T;

// reg_ep10_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP10_TXMAXP_CSR_T;

// reg_ep10_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP10_RXMAXP_CSR_T;

// reg_ep10_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP10_RXCNT_TXTYPE_T;

// reg_ep10_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP10_RXTYPE_INTV_T;

// reg_ep11_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP11_TXMAXP_CSR_T;

// reg_ep11_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP11_RXMAXP_CSR_T;

// reg_ep11_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP11_RXCNT_TXTYPE_T;

// reg_ep11_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP11_RXTYPE_INTV_T;

// reg_ep12_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP12_TXMAXP_CSR_T;

// reg_ep12_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP12_RXMAXP_CSR_T;

// reg_ep12_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP12_RXCNT_TXTYPE_T;

// reg_ep12_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP12_RXTYPE_INTV_T;

// reg_ep13_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP13_TXMAXP_CSR_T;

// reg_ep13_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP13_RXMAXP_CSR_T;

// reg_ep13_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP13_RXCNT_TXTYPE_T;

// reg_ep13_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP13_RXTYPE_INTV_T;

// reg_ep14_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP14_TXMAXP_CSR_T;

// reg_ep14_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP14_RXMAXP_CSR_T;

// reg_ep14_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP14_RXCNT_TXTYPE_T;

// reg_ep14_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP14_RXTYPE_INTV_T;

// reg_ep15_txmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t trdy : 1;  // [16]
        uint32_t fne : 1;   // [17]
        uint32_t err : 1;   // [18]
        uint32_t ff : 1;    // [19]
        uint32_t stp : 1;   // [20]
        uint32_t rxs : 1;   // [21]
        uint32_t clr : 1;   // [22]
        uint32_t nak : 1;   // [23]
        uint32_t dt : 1;    // [24]
        uint32_t dwe : 1;   // [25]
        uint32_t drm : 1;   // [26]
        uint32_t fdt : 1;   // [27]
        uint32_t dmr : 1;   // [28]
        uint32_t md : 1;    // [29]
        uint32_t iso : 1;   // [30]
        uint32_t aset : 1;  // [31]
    } b;
} REG_USBC_REG_EP15_TXMAXP_CSR_T;

// reg_ep15_rxmaxp_csr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t maxp : 11; // [10:0]
        uint32_t mult : 5;  // [15:11]
        uint32_t rrdy : 1;  // [16]
        uint32_t fful : 1;  // [17]
        uint32_t er : 1;    // [18]
        uint32_t der : 1;   // [19]
        uint32_t ff : 1;    // [20]
        uint32_t rpk : 1;   // [21]
        uint32_t rs : 1;    // [22]
        uint32_t clr : 1;   // [23]
        uint32_t irx : 1;   // [24]
        uint32_t dt : 1;    // [25]
        uint32_t dwe : 1;   // [26]
        uint32_t dmd : 1;   // [27]
        uint32_t dny : 1;   // [28]
        uint32_t dmr : 1;   // [29]
        uint32_t arq : 1;   // [30]
        uint32_t aclr : 1;  // [31]
    } b;
} REG_USBC_REG_EP15_RXMAXP_CSR_T;

// reg_ep15_rxcnt_txtype
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxcnt : 13;  // [12:0], read only
        uint32_t __15_13 : 3; // [15:13]
        uint32_t ep : 4;      // [19:16]
        uint32_t prot : 2;    // [21:20]
        uint32_t speed : 2;   // [23:22]
        uint32_t txpi : 8;    // [31:24]
    } b;
} REG_USBC_REG_EP15_RXCNT_TXTYPE_T;

// reg_ep15_rxtype_intv
typedef union {
    uint32_t v;
    struct
    {
        uint32_t ep : 4;       // [3:0]
        uint32_t prot : 2;     // [5:4]
        uint32_t speed : 2;    // [7:6]
        uint32_t rxpi : 8;     // [15:8]
        uint32_t __31_16 : 16; // [31:16]
    } b;
} REG_USBC_REG_EP15_RXTYPE_INTV_T;

// otg_ep0_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP0_RXPKTCNT_T;

// otg_ep1_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP1_RXPKTCNT_T;

// otg_ep2_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP2_RXPKTCNT_T;

// otg_ep3_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP3_RXPKTCNT_T;

// otg_ep4_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP4_RXPKTCNT_T;

// otg_ep5_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP5_RXPKTCNT_T;

// otg_ep6_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP6_RXPKTCNT_T;

// otg_ep7_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP7_RXPKTCNT_T;

// otg_ep8_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP8_RXPKTCNT_T;

// otg_ep9_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP9_RXPKTCNT_T;

// otg_ep10_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP10_RXPKTCNT_T;

// otg_ep11_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP11_RXPKTCNT_T;

// otg_ep12_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP12_RXPKTCNT_T;

// otg_ep13_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP13_RXPKTCNT_T;

// otg_ep14_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP14_RXPKTCNT_T;

// otg_ep15_rxpktcnt
typedef union {
    uint32_t v;
    struct
    {
        uint32_t rxpktcnt : 31;     // [30:0]
        uint32_t rxpkt_mode_en : 1; // [31]
    } b;
} REG_USBC_OTG_EP15_RXPKTCNT_T;

// otg_rxdbdis_txdbdis
typedef union {
    uint32_t v;
    struct
    {
        uint32_t __0_0 : 1;   // [0]
        uint32_t rxdb : 15;   // [15:1], read only
        uint32_t __16_16 : 1; // [16]
        uint32_t txdb : 15;   // [31:17], read only
    } b;
} REG_USBC_OTG_RXDBDIS_TXDBDIS_T;

// otg_uch_hsrtn
typedef union {
    uint32_t v;
    struct
    {
        uint32_t c_t_uch : 16;   // [15:0]
        uint32_t c_t_hsrtn : 16; // [31:16]
    } b;
} REG_USBC_OTG_UCH_HSRTN_T;

// otg_hsbt_fifo
typedef union {
    uint32_t v;
    struct
    {
        uint32_t hsbt : 4;             // [3:0]
        uint32_t __7_4 : 4;            // [7:4]
        uint32_t fifocheckmode_en : 1; // [8]
        uint32_t fifocheckreg : 7;     // [15:9]
        uint32_t fifotimeout : 8;      // [23:16]
        uint32_t host_force_en : 1;    // [24]
        uint32_t host_mode_force : 1;  // [25]
        uint32_t srp_en : 1;           // [26]
        uint32_t __27_27 : 1;          // [27]
        uint32_t clear_txbuff_en : 1;  // [28]
        uint32_t clear_rxbuff_en : 1;  // [29]
        uint32_t tx_compl_mode : 1;    // [30]
        uint32_t __31_31 : 1;          // [31]
    } b;
} REG_USBC_OTG_HSBT_FIFO_T;

// otg_listend_int_sts
typedef union {
    uint32_t v;
    struct
    {
        uint32_t __0_0 : 1;               // [0]
        uint32_t tx_listend_int1 : 1;     // [1], read only
        uint32_t tx_listend_int2 : 1;     // [2], read only
        uint32_t tx_listend_int3 : 1;     // [3], read only
        uint32_t tx_listend_int4 : 1;     // [4], read only
        uint32_t tx_listend_int5 : 1;     // [5], read only
        uint32_t tx_listend_int6 : 1;     // [6], read only
        uint32_t tx_listend_int7 : 1;     // [7], read only
        uint32_t tx_listend_int8 : 1;     // [8], read only
        uint32_t tx_listend_int9 : 1;     // [9], read only
        uint32_t tx_listend_int10 : 1;    // [10], read only
        uint32_t tx_listend_int11 : 1;    // [11], read only
        uint32_t tx_listend_int12 : 1;    // [12], read only
        uint32_t tx_listend_int13 : 1;    // [13], read only
        uint32_t tx_listend_int14 : 1;    // [14], read only
        uint32_t tx_listend_int15 : 1;    // [15], read only
        uint32_t __16_16 : 1;             // [16]
        uint32_t tx_listend_enable1 : 1;  // [17], read only
        uint32_t tx_listend_enable2 : 1;  // [18], read only
        uint32_t tx_listend_enable3 : 1;  // [19], read only
        uint32_t tx_listend_enable4 : 1;  // [20], read only
        uint32_t tx_listend_enable5 : 1;  // [21], read only
        uint32_t tx_listend_enable6 : 1;  // [22], read only
        uint32_t tx_listend_enable7 : 1;  // [23], read only
        uint32_t tx_listend_enable8 : 1;  // [24], read only
        uint32_t tx_listend_enable9 : 1;  // [25], read only
        uint32_t tx_listend_enable10 : 1; // [26], read only
        uint32_t tx_listend_enable11 : 1; // [27], read only
        uint32_t tx_listend_enable12 : 1; // [28], read only
        uint32_t tx_listend_enable13 : 1; // [29], read only
        uint32_t tx_listend_enable14 : 1; // [30], read only
        uint32_t tx_listend_enable15 : 1; // [31], read only
    } b;
} REG_USBC_OTG_LISTEND_INT_STS_T;

// otg_listend_int_clr
typedef union {
    uint32_t v;
    struct
    {
        uint32_t __0_0 : 1;              // [0]
        uint32_t tx_listend_clear1 : 1;  // [1]
        uint32_t tx_listend_clear2 : 1;  // [2]
        uint32_t tx_listend_clear3 : 1;  // [3]
        uint32_t tx_listend_clear4 : 1;  // [4]
        uint32_t tx_listend_clear5 : 1;  // [5]
        uint32_t tx_listend_clear6 : 1;  // [6]
        uint32_t tx_listend_clear7 : 1;  // [7]
        uint32_t tx_listend_clear8 : 1;  // [8]
        uint32_t tx_listend_clear9 : 1;  // [9]
        uint32_t tx_listend_clear10 : 1; // [10]
        uint32_t tx_listend_clear11 : 1; // [11]
        uint32_t tx_listend_clear12 : 1; // [12]
        uint32_t tx_listend_clear13 : 1; // [13]
        uint32_t tx_listend_clear14 : 1; // [14]
        uint32_t tx_listend_clear15 : 1; // [15]
        uint32_t __31_16 : 16;           // [31:16]
    } b;
} REG_USBC_OTG_LISTEND_INT_CLR_T;

// otg_endpoint_en
typedef union {
    uint32_t v;
    struct
    {
        uint32_t __0_0 : 1;             // [0]
        uint32_t endpoint_enable1 : 1;  // [1], read only
        uint32_t endpoint_enable2 : 1;  // [2], read only
        uint32_t endpoint_enable3 : 1;  // [3], read only
        uint32_t endpoint_enable4 : 1;  // [4], read only
        uint32_t endpoint_enable5 : 1;  // [5], read only
        uint32_t endpoint_enable6 : 1;  // [6], read only
        uint32_t endpoint_enable7 : 1;  // [7], read only
        uint32_t endpoint_enable8 : 1;  // [8], read only
        uint32_t endpoint_enable9 : 1;  // [9], read only
        uint32_t endpoint_enable10 : 1; // [10], read only
        uint32_t endpoint_enable11 : 1; // [11], read only
        uint32_t endpoint_enable12 : 1; // [12], read only
        uint32_t endpoint_enable13 : 1; // [13], read only
        uint32_t endpoint_enable14 : 1; // [14], read only
        uint32_t endpoint_enable15 : 1; // [15], read only
        uint32_t __31_16 : 16;          // [31:16]
    } b;
} REG_USBC_OTG_ENDPOINT_EN_T;

// otg_pai
#define USBC_FUNC_ADDR(n) (((n)&0x7f) << 0)
#define USBC_SUSPM (1 << 8)
#define USBC_OTG_PAI_SUSP (1 << 9)
#define USBC_RSM (1 << 10)
#define USBC_OTG_PAI_RST (1 << 11)
#define USBC_HSMD (1 << 12)
#define USBC_HSEN (1 << 13)
#define USBC_SFCN (1 << 14)
#define USBC_OTG_PAI_EP(n) (((n)&0xffff) << 16)

// otg_intrx_inttxen
#define USBC_OTG_INTRX_INTTXEN_RX_EP(n) (((n)&0x7fff) << 1)
#define USBC_OTG_INTRX_INTTXEN_TX_EP(n) (((n)&0xffff) << 16)

// otg_intrxen_usb
#define USBC_OTG_INTRXEN_USB_RX_EP(n) (((n)&0x7fff) << 1)
#define USBC_OTG_INTRXEN_USB_SUSP (1 << 16)
#define USBC_RES (1 << 17)
#define USBC_OTG_INTRXEN_USB_RST (1 << 18)
#define USBC_SOF (1 << 19)
#define USBC_CONN (1 << 20)
#define USBC_DISCON (1 << 21)
#define USBC_SREQ (1 << 22)
#define USBC_VBE (1 << 23)
#define USBC_SSPEN (1 << 24)
#define USBC_RESEN (1 << 25)
#define USBC_RSTEN (1 << 26)
#define USBC_SOFEN (1 << 27)
#define USBC_CONEN (1 << 28)
#define USBC_DSCEN (1 << 29)
#define USBC_SREQEN (1 << 30)
#define USBC_VBEN (1 << 31)

// otg_fit
#define USBC_FMNO(n) (((n)&0x7ff) << 0)
#define USBC_EPNO(n) (((n)&0xf) << 16)
#define USBC_TSTNAK (1 << 24)
#define USBC_TSTJ (1 << 25)
#define USBC_TSTK (1 << 26)
#define USBC_TSTPKT (1 << 27)
#define USBC_FHS (1 << 28)
#define USBC_FFS (1 << 29)
#define USBC_FIFOA (1 << 30)
#define USBC_FRH (1 << 31)

// otg_csr0
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_OTG_CSR0_TRDY (1 << 17)
#define USBC_RSTA (1 << 18)
#define USBC_SP (1 << 19)
#define USBC_OTG_CSR0_ERR (1 << 20)
#define USBC_REP (1 << 21)
#define USBC_OTG_CSR0_STP (1 << 22)
#define USBC_NAKTO (1 << 23)
#define USBC_OTG_CSR0_FF (1 << 24)
#define USBC_OTG_CSR0_DT (1 << 25)
#define USBC_DTWE (1 << 26)
#define USBC_DISP (1 << 27)

// otg_rxcnt_txtype0
#define USBC_RXCNT0(n) (((n)&0x7f) << 0)
#define USBC_OTG_RXCNT_TXTYPE0_SPEED(n) (((n)&0x3) << 22)
#define USBC_NAKLIMIT(n) (((n)&0xf) << 24)

// otg_cfg
#define USBC_UDI (1 << 24)
#define USBC_SC (1 << 25)
#define USBC_DYNF (1 << 26)
#define USBC_HBTXE (1 << 27)
#define USBC_HBRXE (1 << 28)
#define USBC_BE (1 << 29)
#define USBC_MPTXE (1 << 30)
#define USBC_MPRXE (1 << 31)

// otg_devctl
#define USBC_SESS (1 << 0)
#define USBC_HREQ (1 << 1)
#define USBC_HOST (1 << 2)
#define USBC_VBUS(n) (((n)&0x3) << 3)
#define USBC_LSDEV (1 << 5)
#define USBC_FSDEV (1 << 6)
#define USBC_BDEV (1 << 7)
#define USBC_DMAINTER (1 << 8)
#define USBC_CTRLINTER (1 << 9)
#define USBC_TXSIZE(n) (((n)&0xf) << 16)
#define USBC_TXDPB (1 << 20)
#define USBC_RXSIZE(n) (((n)&0xf) << 24)
#define USBC_RXDPB (1 << 28)

// otg_fa
#define USBC_TXAD(n) (((n)&0x1fff) << 0)
#define USBC_RXAD(n) (((n)&0x1fff) << 16)

// otg_hwver
#define USBC_VMIN(n) (((n)&0x3ff) << 0)
#define USBC_VMAJ(n) (((n)&0x1f) << 10)

// otg_info
#define USBC_OTG_INFO_TX_EP(n) (((n)&0xf) << 0)
#define USBC_OTG_INFO_RX_EP(n) (((n)&0xf) << 4)
#define USBC_RAM_BITS(n) (((n)&0xf) << 8)
#define USBC_DMA_CH(n) (((n)&0xf) << 12)
#define USBC_WTID(n) (((n)&0xf) << 16)
#define USBC_WTCON(n) (((n)&0xf) << 20)
#define USBC_VPLEN(n) (((n)&0xff) << 24)

// otg_eof
#define USBC_HS_EOF1(n) (((n)&0xff) << 0)
#define USBC_FS_EOF1(n) (((n)&0xff) << 8)
#define USBC_LS_EOF1(n) (((n)&0xff) << 16)
#define USBC_OTG_EOF_RST (1 << 24)
#define USBC_RSTX (1 << 25)

// otg_ep0_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep0_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep1_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep1_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep2_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep2_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep3_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep3_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep4_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep4_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep5_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep5_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep6_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep6_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep7_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep7_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep8_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep8_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep9_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep9_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep10_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep10_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep11_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep11_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep12_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep12_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep13_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep13_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep14_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep14_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// otg_ep15_txfad_had_hp
#define USBC_TXFAD(n) (((n)&0x7f) << 0)
#define USBC_TXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_TXHP(n) (((n)&0x7f) << 24)

// otg_ep15_rxfad_had_hp
#define USBC_RXFAD(n) (((n)&0x7f) << 0)
#define USBC_RXHAD(n) (((n)&0x7f) << 16)
#define USBC_MULTIPLE (1 << 23)
#define USBC_RXHP(n) (((n)&0x7f) << 24)

// reg_ep1_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP1_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP1_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP1_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP1_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP1_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP1_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP1_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP1_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep1_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP1_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP1_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP1_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP1_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP1_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep1_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP1_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP1_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP1_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep1_rxtype_intv
#define USBC_REG_EP1_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP1_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP1_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep2_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP2_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP2_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP2_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP2_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP2_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP2_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP2_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP2_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep2_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP2_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP2_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP2_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP2_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP2_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep2_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP2_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP2_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP2_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep2_rxtype_intv
#define USBC_REG_EP2_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP2_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP2_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep3_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP3_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP3_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP3_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP3_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP3_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP3_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP3_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP3_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep3_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP3_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP3_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP3_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP3_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP3_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep3_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP3_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP3_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP3_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep3_rxtype_intv
#define USBC_REG_EP3_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP3_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP3_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep4_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP4_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP4_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP4_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP4_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP4_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP4_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP4_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP4_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep4_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP4_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP4_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP4_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP4_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP4_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep4_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP4_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP4_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP4_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep4_rxtype_intv
#define USBC_REG_EP4_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP4_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP4_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep5_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP5_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP5_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP5_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP5_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP5_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP5_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP5_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP5_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep5_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP5_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP5_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP5_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP5_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP5_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep5_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP5_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP5_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP5_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep5_rxtype_intv
#define USBC_REG_EP5_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP5_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP5_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep6_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP6_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP6_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP6_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP6_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP6_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP6_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP6_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP6_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep6_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP6_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP6_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP6_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP6_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP6_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep6_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP6_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP6_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP6_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep6_rxtype_intv
#define USBC_REG_EP6_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP6_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP6_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep7_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP7_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP7_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP7_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP7_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP7_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP7_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP7_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP7_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep7_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP7_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP7_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP7_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP7_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP7_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep7_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP7_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP7_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP7_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep7_rxtype_intv
#define USBC_REG_EP7_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP7_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP7_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep8_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP8_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP8_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP8_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP8_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP8_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP8_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP8_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP8_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep8_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP8_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP8_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP8_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP8_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP8_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep8_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP8_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP8_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP8_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep8_rxtype_intv
#define USBC_REG_EP8_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP8_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP8_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep9_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP9_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP9_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP9_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP9_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP9_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP9_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP9_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP9_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep9_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP9_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP9_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP9_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP9_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP9_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep9_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP9_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP9_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP9_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep9_rxtype_intv
#define USBC_REG_EP9_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP9_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP9_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep10_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP10_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP10_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP10_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP10_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP10_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP10_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP10_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP10_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep10_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP10_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP10_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP10_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP10_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP10_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep10_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP10_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP10_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP10_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep10_rxtype_intv
#define USBC_REG_EP10_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP10_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP10_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep11_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP11_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP11_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP11_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP11_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP11_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP11_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP11_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP11_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep11_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP11_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP11_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP11_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP11_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP11_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep11_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP11_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP11_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP11_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep11_rxtype_intv
#define USBC_REG_EP11_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP11_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP11_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep12_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP12_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP12_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP12_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP12_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP12_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP12_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP12_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP12_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep12_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP12_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP12_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP12_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP12_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP12_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep12_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP12_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP12_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP12_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep12_rxtype_intv
#define USBC_REG_EP12_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP12_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP12_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep13_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP13_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP13_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP13_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP13_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP13_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP13_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP13_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP13_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep13_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP13_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP13_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP13_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP13_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP13_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep13_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP13_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP13_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP13_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep13_rxtype_intv
#define USBC_REG_EP13_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP13_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP13_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep14_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP14_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP14_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP14_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP14_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP14_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP14_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP14_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP14_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep14_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP14_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP14_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP14_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP14_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP14_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep14_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP14_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP14_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP14_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep14_rxtype_intv
#define USBC_REG_EP14_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP14_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP14_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// reg_ep15_txmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_REG_EP15_TXMAXP_CSR_TRDY (1 << 16)
#define USBC_FNE (1 << 17)
#define USBC_REG_EP15_TXMAXP_CSR_ERR (1 << 18)
#define USBC_REG_EP15_TXMAXP_CSR_FF (1 << 19)
#define USBC_REG_EP15_TXMAXP_CSR_STP (1 << 20)
#define USBC_RXS (1 << 21)
#define USBC_REG_EP15_TXMAXP_CSR_CLR (1 << 22)
#define USBC_NAK (1 << 23)
#define USBC_REG_EP15_TXMAXP_CSR_DT (1 << 24)
#define USBC_REG_EP15_TXMAXP_CSR_DWE (1 << 25)
#define USBC_DRM (1 << 26)
#define USBC_FDT (1 << 27)
#define USBC_REG_EP15_TXMAXP_CSR_DMR (1 << 28)
#define USBC_MD (1 << 29)
#define USBC_ISO (1 << 30)
#define USBC_ASET (1 << 31)

// reg_ep15_rxmaxp_csr
#define USBC_MAXP(n) (((n)&0x7ff) << 0)
#define USBC_MULT(n) (((n)&0x1f) << 11)
#define USBC_RRDY (1 << 16)
#define USBC_FFUL (1 << 17)
#define USBC_ER (1 << 18)
#define USBC_DER (1 << 19)
#define USBC_REG_EP15_RXMAXP_CSR_FF (1 << 20)
#define USBC_RPK (1 << 21)
#define USBC_RS (1 << 22)
#define USBC_REG_EP15_RXMAXP_CSR_CLR (1 << 23)
#define USBC_IRX (1 << 24)
#define USBC_REG_EP15_RXMAXP_CSR_DT (1 << 25)
#define USBC_REG_EP15_RXMAXP_CSR_DWE (1 << 26)
#define USBC_DMD (1 << 27)
#define USBC_DNY (1 << 28)
#define USBC_REG_EP15_RXMAXP_CSR_DMR (1 << 29)
#define USBC_ARQ (1 << 30)
#define USBC_ACLR (1 << 31)

// reg_ep15_rxcnt_txtype
#define USBC_RXCNT(n) (((n)&0x1fff) << 0)
#define USBC_REG_EP15_RXCNT_TXTYPE_EP(n) (((n)&0xf) << 16)
#define USBC_REG_EP15_RXCNT_TXTYPE_PROT(n) (((n)&0x3) << 20)
#define USBC_REG_EP15_RXCNT_TXTYPE_SPEED(n) (((n)&0x3) << 22)
#define USBC_TXPI(n) (((n)&0xff) << 24)

// reg_ep15_rxtype_intv
#define USBC_REG_EP15_RXTYPE_INTV_EP(n) (((n)&0xf) << 0)
#define USBC_REG_EP15_RXTYPE_INTV_PROT(n) (((n)&0x3) << 4)
#define USBC_REG_EP15_RXTYPE_INTV_SPEED(n) (((n)&0x3) << 6)
#define USBC_RXPI(n) (((n)&0xff) << 8)

// otg_ep0_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep1_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep2_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep3_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep4_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep5_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep6_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep7_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep8_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep9_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep10_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep11_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep12_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep13_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep14_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_ep15_rxpktcnt
#define USBC_RXPKTCNT(n) (((n)&0x7fffffff) << 0)
#define USBC_RXPKT_MODE_EN (1 << 31)

// otg_rxdbdis_txdbdis
#define USBC_RXDB(n) (((n)&0x7fff) << 1)
#define USBC_TXDB(n) (((n)&0x7fff) << 17)

// otg_uch_hsrtn
#define USBC_C_T_UCH(n) (((n)&0xffff) << 0)
#define USBC_C_T_HSRTN(n) (((n)&0xffff) << 16)

// otg_hsbt_fifo
#define USBC_HSBT(n) (((n)&0xf) << 0)
#define USBC_FIFOCHECKMODE_EN (1 << 8)
#define USBC_FIFOCHECKREG(n) (((n)&0x7f) << 9)
#define USBC_FIFOTIMEOUT(n) (((n)&0xff) << 16)
#define USBC_HOST_FORCE_EN (1 << 24)
#define USBC_HOST_MODE_FORCE (1 << 25)
#define USBC_SRP_EN (1 << 26)
#define USBC_CLEAR_TXBUFF_EN (1 << 28)
#define USBC_CLEAR_RXBUFF_EN (1 << 29)
#define USBC_TX_COMPL_MODE (1 << 30)

// otg_listend_int_sts
#define USBC_TX_LISTEND_INT1 (1 << 1)
#define USBC_TX_LISTEND_INT2 (1 << 2)
#define USBC_TX_LISTEND_INT3 (1 << 3)
#define USBC_TX_LISTEND_INT4 (1 << 4)
#define USBC_TX_LISTEND_INT5 (1 << 5)
#define USBC_TX_LISTEND_INT6 (1 << 6)
#define USBC_TX_LISTEND_INT7 (1 << 7)
#define USBC_TX_LISTEND_INT8 (1 << 8)
#define USBC_TX_LISTEND_INT9 (1 << 9)
#define USBC_TX_LISTEND_INT10 (1 << 10)
#define USBC_TX_LISTEND_INT11 (1 << 11)
#define USBC_TX_LISTEND_INT12 (1 << 12)
#define USBC_TX_LISTEND_INT13 (1 << 13)
#define USBC_TX_LISTEND_INT14 (1 << 14)
#define USBC_TX_LISTEND_INT15 (1 << 15)
#define USBC_TX_LISTEND_ENABLE1 (1 << 17)
#define USBC_TX_LISTEND_ENABLE2 (1 << 18)
#define USBC_TX_LISTEND_ENABLE3 (1 << 19)
#define USBC_TX_LISTEND_ENABLE4 (1 << 20)
#define USBC_TX_LISTEND_ENABLE5 (1 << 21)
#define USBC_TX_LISTEND_ENABLE6 (1 << 22)
#define USBC_TX_LISTEND_ENABLE7 (1 << 23)
#define USBC_TX_LISTEND_ENABLE8 (1 << 24)
#define USBC_TX_LISTEND_ENABLE9 (1 << 25)
#define USBC_TX_LISTEND_ENABLE10 (1 << 26)
#define USBC_TX_LISTEND_ENABLE11 (1 << 27)
#define USBC_TX_LISTEND_ENABLE12 (1 << 28)
#define USBC_TX_LISTEND_ENABLE13 (1 << 29)
#define USBC_TX_LISTEND_ENABLE14 (1 << 30)
#define USBC_TX_LISTEND_ENABLE15 (1 << 31)

// otg_listend_int_clr
#define USBC_TX_LISTEND_CLEAR1 (1 << 1)
#define USBC_TX_LISTEND_CLEAR2 (1 << 2)
#define USBC_TX_LISTEND_CLEAR3 (1 << 3)
#define USBC_TX_LISTEND_CLEAR4 (1 << 4)
#define USBC_TX_LISTEND_CLEAR5 (1 << 5)
#define USBC_TX_LISTEND_CLEAR6 (1 << 6)
#define USBC_TX_LISTEND_CLEAR7 (1 << 7)
#define USBC_TX_LISTEND_CLEAR8 (1 << 8)
#define USBC_TX_LISTEND_CLEAR9 (1 << 9)
#define USBC_TX_LISTEND_CLEAR10 (1 << 10)
#define USBC_TX_LISTEND_CLEAR11 (1 << 11)
#define USBC_TX_LISTEND_CLEAR12 (1 << 12)
#define USBC_TX_LISTEND_CLEAR13 (1 << 13)
#define USBC_TX_LISTEND_CLEAR14 (1 << 14)
#define USBC_TX_LISTEND_CLEAR15 (1 << 15)

// otg_endpoint_en
#define USBC_ENDPOINT_ENABLE1 (1 << 1)
#define USBC_ENDPOINT_ENABLE2 (1 << 2)
#define USBC_ENDPOINT_ENABLE3 (1 << 3)
#define USBC_ENDPOINT_ENABLE4 (1 << 4)
#define USBC_ENDPOINT_ENABLE5 (1 << 5)
#define USBC_ENDPOINT_ENABLE6 (1 << 6)
#define USBC_ENDPOINT_ENABLE7 (1 << 7)
#define USBC_ENDPOINT_ENABLE8 (1 << 8)
#define USBC_ENDPOINT_ENABLE9 (1 << 9)
#define USBC_ENDPOINT_ENABLE10 (1 << 10)
#define USBC_ENDPOINT_ENABLE11 (1 << 11)
#define USBC_ENDPOINT_ENABLE12 (1 << 12)
#define USBC_ENDPOINT_ENABLE13 (1 << 13)
#define USBC_ENDPOINT_ENABLE14 (1 << 14)
#define USBC_ENDPOINT_ENABLE15 (1 << 15)

#endif // _USBC_H_
