Open FFBoard
Open source force feedback firmware
dwc2_type.h File Reference

Go to the source code of this file.

Classes

struct  HS_PHYC_GlobalTypeDef
 
struct  TU_ATTR_PACKED
 AUDIO Channel Cluster Descriptor (4.1) More...
 
struct  dwc2_channel_t
 
struct  dwc2_epin_t
 
struct  dwc2_epout_t
 
struct  dwc2_dep_t
 
struct  dwc2_regs_t
 

Typedefs

typedef struct TU_ATTR_PACKED dwc2_gotgctl_t
 
typedef struct TU_ATTR_PACKED dwc2_gotgint_t
 
typedef struct TU_ATTR_PACKED dwc2_gahbcfg_t
 
typedef struct TU_ATTR_PACKED dwc2_gusbcfg_t
 
typedef struct TU_ATTR_PACKED dwc2_grstctl_t
 
typedef struct TU_ATTR_PACKED dwc2_grxstsp_t
 
typedef struct TU_ATTR_PACKED dwc2_ghwcfg2_t
 
typedef struct TU_ATTR_PACKED dwc2_ghwcfg3_t
 
typedef struct TU_ATTR_PACKED dwc2_ghwcfg4_t
 
typedef struct TU_ATTR_PACKED dwc2_hnptxsts_t
 
typedef struct TU_ATTR_PACKED dwc2_hptxsts_t
 
typedef struct TU_ATTR_PACKED dwc2_hprt_t
 
typedef struct TU_ATTR_PACKED dwc2_channel_char_t
 
typedef struct TU_ATTR_PACKED dwc2_channel_split_t
 
typedef struct TU_ATTR_PACKED dwc2_channel_tsize_t
 
typedef struct TU_ATTR_PACKED dwc2_hfnum_t
 
typedef struct TU_ATTR_PACKED dwc2_ep_tsize_t
 

Enumerations

enum  { GOTGCTL_OTG_VERSION_1_3 = 0 , GOTGCTL_OTG_VERSION_2_0 = 1 }
 
enum  {
  GHWCFG2_OPMODE_HNP_SRP = 0 , GHWCFG2_OPMODE_SRP = 1 , GHWCFG2_OPMODE_NON_HNP_NON_SRP = 2 , GHWCFG2_OPMODE_SRP_DEVICE = 3 ,
  GHWCFFG2_OPMODE_NON_OTG_DEVICE = 4 , GHWCFG2_OPMODE_SRP_HOST = 5 , GHWCFG2_OPMODE_NON_OTG_HOST = 6
}
 
enum  { GHWCFG2_ARCH_SLAVE_ONLY = 0 , GHWCFG2_ARCH_EXTERNAL_DMA = 1 , GHWCFG2_ARCH_INTERNAL_DMA = 2 }
 
enum  { GHWCFG2_HSPHY_NOT_SUPPORTED = 0 , GHWCFG2_HSPHY_UTMI = 1 , GHWCFG2_HSPHY_ULPI = 2 , GHWCFG2_HSPHY_UTMI_ULPI = 3 }
 
enum  { GHWCFG2_FSPHY_NOT_SUPPORTED = 0 , GHWCFG2_FSPHY_DEDICATED = 1 , GHWCFG2_FSPHY_UTMI = 2 , GHWCFG2_FSPHY_ULPI = 3 }
 
enum  { GHWCFFG4_PHY_DATA_WIDTH_8 = 0 , GHWCFFG4_PHY_DATA_WIDTH_16 = 1 , GHWCFFG4_PHY_DATA_WIDTH_8_16 = 2 }
 
enum  { HPRT_SPEED_HIGH = 0 , HPRT_SPEED_FULL = 1 , HPRT_SPEED_LOW = 2 }
 
enum  { GINTSTS_CMODE_DEVICE = 0 , GINTSTS_CMODE_HOST = 1 }
 
enum  { HCTSIZ_PID_DATA0 = 0 , HCTSIZ_PID_DATA2 = 1 , HCTSIZ_PID_DATA1 = 2 , HCTSIZ_PID_SETUP = 3 }
 
enum  { HCTSIZ_PID_MDATA = 3 }
 
enum  {
  GRXSTS_PKTSTS_GLOBALOUTNAK = 1 , GRXSTS_PKTSTS_OUTRX = 2 , GRXSTS_PKTSTS_OUTDONE = 3 , GRXSTS_PKTSTS_SETUPDONE = 4 ,
  GRXSTS_PKTSTS_SETUPRX = 6
}
 
enum  { GRXSTS_PKTSTS_RX_DATA = 2 , GRXSTS_PKTSTS_RX_COMPLETE = 3 , GRXSTS_PKTSTS_HOST_DATATOGGLE_ERR = 5 , GRXSTS_PKTSTS_HOST_CHANNEL_HALTED = 7 }
 
enum  { HCCHAR_EPTYPE_CONTROL = 0 , HCCHAR_EPTYPE_ISOCHRONOUS = 1 , HCCHAR_EPTYPE_BULK = 2 , HCCHAR_EPTYPE_INTERRUPT = 3 }
 

Functions

 TU_VERIFY_STATIC (sizeof(dwc2_gotgctl_t)==4, "incorrect size")
 
 TU_VERIFY_STATIC (sizeof(dwc2_dep_t)==0x20, "incorrect size")
 
 TU_VERIFY_STATIC (offsetof(dwc2_regs_t, hcfg)==0x0400, "incorrect size")
 
 TU_VERIFY_STATIC (offsetof(dwc2_regs_t, channel)==0x0500, "incorrect size")
 
 TU_VERIFY_STATIC (offsetof(dwc2_regs_t, dcfg)==0x0800, "incorrect size")
 
 TU_VERIFY_STATIC (offsetof(dwc2_regs_t, epin)==0x0900, "incorrect size")
 
 TU_VERIFY_STATIC (offsetof(dwc2_regs_t, epout)==0x0B00, "incorrect size")
 
 TU_VERIFY_STATIC (offsetof(dwc2_regs_t, pcgcctl)==0x0E00, "incorrect size")
 
 TU_VERIFY_STATIC (offsetof(dwc2_regs_t, fifo)==0x1000, "incorrect size")
 

Variables

 C
 

Typedef Documentation

◆ dwc2_channel_char_t

◆ dwc2_channel_split_t

◆ dwc2_channel_tsize_t

◆ dwc2_ep_tsize_t

◆ dwc2_gahbcfg_t

◆ dwc2_ghwcfg2_t

◆ dwc2_ghwcfg3_t

◆ dwc2_ghwcfg4_t

◆ dwc2_gotgctl_t

◆ dwc2_gotgint_t

◆ dwc2_grstctl_t

◆ dwc2_grxstsp_t

◆ dwc2_gusbcfg_t

◆ dwc2_hfnum_t

typedef struct TU_ATTR_PACKED dwc2_hfnum_t

◆ dwc2_hnptxsts_t

◆ dwc2_hprt_t

typedef struct TU_ATTR_PACKED dwc2_hprt_t

◆ dwc2_hptxsts_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
GOTGCTL_OTG_VERSION_1_3 
GOTGCTL_OTG_VERSION_2_0 

Definition at line 89 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GHWCFG2_OPMODE_HNP_SRP 
GHWCFG2_OPMODE_SRP 
GHWCFG2_OPMODE_NON_HNP_NON_SRP 
GHWCFG2_OPMODE_SRP_DEVICE 
GHWCFFG2_OPMODE_NON_OTG_DEVICE 
GHWCFG2_OPMODE_SRP_HOST 
GHWCFG2_OPMODE_NON_OTG_HOST 

Definition at line 94 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GHWCFG2_ARCH_SLAVE_ONLY 
GHWCFG2_ARCH_EXTERNAL_DMA 
GHWCFG2_ARCH_INTERNAL_DMA 

Definition at line 103 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GHWCFG2_HSPHY_NOT_SUPPORTED 
GHWCFG2_HSPHY_UTMI 
GHWCFG2_HSPHY_ULPI 
GHWCFG2_HSPHY_UTMI_ULPI 

Definition at line 109 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GHWCFG2_FSPHY_NOT_SUPPORTED 
GHWCFG2_FSPHY_DEDICATED 
GHWCFG2_FSPHY_UTMI 
GHWCFG2_FSPHY_ULPI 

Definition at line 117 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GHWCFFG4_PHY_DATA_WIDTH_8 
GHWCFFG4_PHY_DATA_WIDTH_16 
GHWCFFG4_PHY_DATA_WIDTH_8_16 

Definition at line 124 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
HPRT_SPEED_HIGH 
HPRT_SPEED_FULL 
HPRT_SPEED_LOW 

Definition at line 130 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GINTSTS_CMODE_DEVICE 
GINTSTS_CMODE_HOST 

Definition at line 136 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
HCTSIZ_PID_DATA0 
HCTSIZ_PID_DATA2 
HCTSIZ_PID_DATA1 
HCTSIZ_PID_SETUP 

Definition at line 141 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
HCTSIZ_PID_MDATA 

Definition at line 147 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GRXSTS_PKTSTS_GLOBALOUTNAK 
GRXSTS_PKTSTS_OUTRX 
GRXSTS_PKTSTS_OUTDONE 
GRXSTS_PKTSTS_SETUPDONE 
GRXSTS_PKTSTS_SETUPRX 

Definition at line 151 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
GRXSTS_PKTSTS_RX_DATA 
GRXSTS_PKTSTS_RX_COMPLETE 
GRXSTS_PKTSTS_HOST_DATATOGGLE_ERR 
GRXSTS_PKTSTS_HOST_CHANNEL_HALTED 

Definition at line 159 of file dwc2_type.h.

◆ anonymous enum

anonymous enum
Enumerator
HCCHAR_EPTYPE_CONTROL 
HCCHAR_EPTYPE_ISOCHRONOUS 
HCCHAR_EPTYPE_BULK 
HCCHAR_EPTYPE_INTERRUPT 

Definition at line 167 of file dwc2_type.h.

Function Documentation

◆ TU_VERIFY_STATIC() [1/9]

TU_VERIFY_STATIC ( offsetof(dwc2_regs_t, channel)  = =0x0500,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [2/9]

TU_VERIFY_STATIC ( offsetof(dwc2_regs_t, dcfg)  = =0x0800,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [3/9]

TU_VERIFY_STATIC ( offsetof(dwc2_regs_t, epin)  = =0x0900,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [4/9]

TU_VERIFY_STATIC ( offsetof(dwc2_regs_t, epout)  = =0x0B00,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [5/9]

TU_VERIFY_STATIC ( offsetof(dwc2_regs_t, fifo)  = =0x1000,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [6/9]

TU_VERIFY_STATIC ( offsetof(dwc2_regs_t, hcfg)  = =0x0400,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [7/9]

TU_VERIFY_STATIC ( offsetof(dwc2_regs_t, pcgcctl)  = =0x0E00,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [8/9]

TU_VERIFY_STATIC ( sizeof(dwc2_dep_t = =0x20,
"incorrect size"   
)

◆ TU_VERIFY_STATIC() [9/9]

TU_VERIFY_STATIC ( sizeof(dwc2_gotgctl_t = =4,
"incorrect size"   
)

Variable Documentation

◆ C

C
extern
Initial value:
{
#endif
typedef struct
{
uintptr_t reg_base;
uint32_t irqnum;
uint8_t ep_count;
uint8_t ep_in_count;
uint32_t ep_fifo_size;
}dwc2_controller_t