1 /* 2 * Copyright (C) 2015-2020 Alibaba Group Holding Limited 3 */ 4 #ifndef _REG_USB_H_ 5 #define _REG_USB_H_ 6 7 #include "stdint.h" 8 #include "plat_types.h" 9 10 // ============================================================================= 11 // MACROS 12 // ============================================================================= 13 #define SPFIFORAM_SIZE (1024) 14 15 // ============================================================================= 16 // TYPES 17 // ============================================================================= 18 19 // ============================================================================ 20 // USBC_T 21 // ----------------------------------------------------------------------------- 22 /// 23 // ============================================================================= 24 struct USBC_T { 25 //common part 26 __IO uint32_t GOTGCTL; //0x00000000 27 __IO uint32_t GOTGINT; //0x00000004 28 __IO uint32_t GAHBCFG; //0x00000008 29 __IO uint32_t GUSBCFG; //0x0000000C 30 __IO uint32_t GRSTCTL; //0x00000010 31 __IO uint32_t GINTSTS; //0x00000014 32 __IO uint32_t GINTMSK; //0x00000018 33 __IO uint32_t GRXSTSR; //0x0000001C 34 __IO uint32_t GRXSTSP; //0x00000020 35 __IO uint32_t GRXFSIZ; //0x00000024 36 __IO uint32_t GNPTXFSIZ; //0x00000028 37 __IO uint32_t GNPTXSTS; //0x0000002C 38 __IO uint32_t GI2CCTL; //0x00000030 39 __IO uint32_t GPVNDCTL; //0x00000034 40 __IO uint32_t GGPIO; //0x00000038 41 __IO uint32_t GUID; //0x0000003C 42 __IO uint32_t GSNPSID; //0x00000040 43 __IO uint32_t GHWCFG1; //0x00000044 44 __IO uint32_t GHWCFG2; //0x00000048 45 __IO uint32_t GHWCFG3; //0x0000004C 46 __IO uint32_t GHWCFG4; //0x00000050 47 __IO uint32_t GLPMCFG; //0x00000054 48 __IO uint32_t GPWRDN; //0x00000058 49 __IO uint32_t GDFIFOCFG; //0x0000005C 50 __IO uint32_t GADPCTL; //0x00000060 51 __IO uint32_t Reserved_00000054[0x27]; //0x00000064 52 __IO uint32_t HPTXFSIZ; //0x00000100 53 union 54 { 55 __IO uint32_t DPTXFSIZn; //0x00000104 - 13F 56 __IO uint32_t DIEPTXFn; //0x00000104 - 13F 57 } DTXFSIZE[15]; 58 __IO uint32_t Reserved_00000140[0xB0]; //0x00000140 - 3FF 59 //host part 60 __IO uint32_t HCFG; //0x00000400 61 __IO uint32_t HFIR; //0x00000404 62 __IO uint32_t HFNUM; //0x00000408 63 __IO uint32_t Reserved_0000040C; //0x0000040C 64 __IO uint32_t HPTXSTS; //0x00000410 65 __IO uint32_t HAINT; //0x00000414 66 __IO uint32_t HAINTMSK; //0x00000418 67 __IO uint32_t Reserved_0000041C[9]; //0x0000041C 68 __IO uint32_t HPRT; //0x00000440 69 __IO uint32_t Reserved_00000444[0x2F]; //0x00000444 70 struct 71 { 72 __IO uint32_t HCCHARn; //0x00000500+n*0x20 73 __IO uint32_t HCSPLTn; //0x00000504+n*0x20 74 __IO uint32_t HCINTn; //0x00000508+n*0x20 75 __IO uint32_t HCINTMSKn; //0x0000050C+n*0x20 76 __IO uint32_t HCTSIZn; //0x00000510+n*0x20 77 __IO uint32_t HCDMAn; //0x00000514+n*0x20 78 __IO uint32_t Reserved_00000518; //0x00000518+n*0x20 79 __IO uint32_t HCDMABn; //0x0000051C+n*0x20 80 } HCSR[16]; 81 __IO uint32_t Reserved_00000700[0x40]; //0x00000700 82 //device part 83 __IO uint32_t DCFG; //0x00000800 84 __IO uint32_t DCTL; //0x00000804 85 __IO uint32_t DSTS; //0x00000808 86 __IO uint32_t Reserved_0000080C; //0x0000080C 87 __IO uint32_t DIEPMSK; //0x00000810 88 __IO uint32_t DOEPMSK; //0x00000814 89 __IO uint32_t DAINT; //0x00000818 90 __IO uint32_t DAINTMSK; //0x0000081C 91 __IO uint32_t DTKNQR1; //0x00000820 92 __IO uint32_t DTKNQR2; //0x00000824 93 __IO uint32_t DVBUSDIS; //0x00000828 94 __IO uint32_t DVBUSPULSE; //0x0000082C 95 __IO uint32_t DTHRCTL; //0x00000830 96 __IO uint32_t DIEPEMPMSK; //0x00000834 97 __IO uint32_t Reserved_00000838[0x32]; //0x00000838 98 __IO uint32_t DIEPCTL0; //0x00000900 99 __IO uint32_t Reserved_00000904; //0x00000904 100 __IO uint32_t DIEPINT0; //0x00000908 101 __IO uint32_t Reserved_0000090C; //0x0000090C 102 __IO uint32_t DIEPTSIZ0; //0x00000910 103 __IO uint32_t DIEPDMA0; //0x00000914 104 __IO uint32_t DIEPFSTS0; //0x00000918 105 __IO uint32_t DIEPDMAB0; //0x0000091C 106 struct 107 { 108 __IO uint32_t DIEPCTL; //0x00000920 109 __IO uint32_t Reserved_00000924; //0x00000924 110 __IO uint32_t DIEPINT; //0x00000928 111 __IO uint32_t Reserved_0000092C; //0x0000092C 112 __IO uint32_t DIEPTSIZ; //0x00000930 113 __IO uint32_t DIEPDMA; //0x00000934 114 __IO uint32_t DIEPFSTS; //0x00000938 115 __IO uint32_t DIEPDMAB; //0x0000093C 116 } DIEPnCONFIG[15]; 117 __IO uint32_t DOEPCTL0; //0x00000B00 118 __IO uint32_t Reserved_00000B04; //0x00000B04 119 __IO uint32_t DOEPINT0; //0x00000B08 120 __IO uint32_t Reserved_00000B0C; //0x00000B0C 121 __IO uint32_t DOEPTSIZ0; //0x00000B10 122 __IO uint32_t DOEPDMA0; //0x00000B14 123 __IO uint32_t Reserved_00000B18; //0x00000B18 124 __IO uint32_t DOEPDMAB0; //0x00000B1C 125 struct 126 { 127 __IO uint32_t DOEPCTL; //0x00000B20 128 __IO uint32_t Reserved_00000B24; //0x00000B24 129 __IO uint32_t DOEPINT; //0x00000B28 130 __IO uint32_t Reserved_00000B2C; //0x00000B2C 131 __IO uint32_t DOEPTSIZ; //0x00000B30 132 __IO uint32_t DOEPDMA; //0x00000B34 133 __IO uint32_t Reserved_00000B38; //0x00000B38 134 __IO uint32_t DOEPDMAB; //0x00000B3C 135 } DOEPnCONFIG[15]; 136 __IO uint32_t Reserved_00000D00[0x40]; //0x00000D00 137 __IO uint32_t PCGCCTL; //0x00000E00 138 __IO uint32_t Reserved_00000E04; //0x00000E04 139 __IO uint32_t TPORTDBG0; //0x00000E08 140 __IO uint32_t TPORTDBG1; //0x00000E0C 141 __IO uint32_t Reserved_00000E0C[0x7C]; //0x00000E10 142 struct 143 { 144 __IO uint32_t TxRxData; //0x00001000 145 __IO uint32_t Reserved_00001004[0x3FF]; //0x00001004 146 } EPnFIFO[16]; 147 __IO uint32_t Reserved_00011000[0x3C00]; //0x00011000 148 struct 149 { 150 __IO uint32_t RAMData; //0x00020000 151 } SPFIFORAM[SPFIFORAM_SIZE]; 152 }; 153 154 //GOTGCTL 155 #define USBC_SESREQSCS (1<<0) 156 #define USBC_SESREQSCS_MASK (1<<0) 157 #define USBC_SESREQSCS_SHIFT (0) 158 #define USBC_SESREQ (1<<1) 159 #define USBC_SESREQ_MASK (1<<1) 160 #define USBC_SESREQ_SHIFT (1) 161 #define USBC_HSTNEGSCS (1<<8) 162 #define USBC_HSTNEGSCS_MASK (1<<8) 163 #define USBC_HSTNEGSCS_SHIFT (8) 164 #define USBC_HNPREQ (1<<9) 165 #define USBC_HNPREQ_MASK (1<<9) 166 #define USBC_HNPREQ_SHIFT (9) 167 #define USBC_HSTSETHNPEN (1<<10) 168 #define USBC_HSTSETHNPEN_MASK (1<<10) 169 #define USBC_HSTSETHNPEN_SHIFT (10) 170 #define USBC_DEVHNPEN (1<<11) 171 #define USBC_DEVHNPEN_MASK (1<<11) 172 #define USBC_DEVHNPEN_SHIFT (11) 173 #define USBC_CONLDSTS (1<<16) 174 #define USBC_CONLDSTS_MASK (1<<16) 175 #define USBC_CONLDSTS_SHIFT (16) 176 #define USBC_DBNCTIME (1<<17) 177 #define USBC_DBNCTIME_MASK (1<<17) 178 #define USBC_DBNCTIME_SHIFT (17) 179 #define USBC_ASESVLD (1<<18) 180 #define USBC_ASESVLD_MASK (1<<18) 181 #define USBC_ASESVLD_SHIFT (18) 182 #define USBC_BSESVLD (1<<19) 183 #define USBC_BSESVLD_MASK (1<<19) 184 #define USBC_BSESVLD_SHIFT (19) 185 186 //GOTGINT 187 #define USBC_SESENDDET (1<<2) 188 #define USBC_SESENDDET_MASK (1<<2) 189 #define USBC_SESENDDET_SHIFT (2) 190 #define USBC_SESREQSUCSTSCHNG (1<<8) 191 #define USBC_SESREQSUCSTSCHNG_MASK (1<<8) 192 #define USBC_SESREQSUCSTSCHNG_SHIFT (8) 193 #define USBC_HSTNEGSUCSTSCHNG (1<<9) 194 #define USBC_HSTNEGSUCSTSCHNG_MASK (1<<9) 195 #define USBC_HSTNEGSUCSTSCHNG_SHIFT (9) 196 #define USBC_HSTNEGDET (1<<17) 197 #define USBC_HSTNEGDET_MASK (1<<17) 198 #define USBC_HSTNEGDET_SHIFT (17) 199 #define USBC_ADEVTOUTCHG (1<<18) 200 #define USBC_ADEVTOUTCHG_MASK (1<<18) 201 #define USBC_ADEVTOUTCHG_SHIFT (18) 202 #define USBC_DBNCEDONE (1<<19) 203 #define USBC_DBNCEDONE_MASK (1<<19) 204 #define USBC_DBNCEDONE_SHIFT (19) 205 206 //GAHBCFG 207 #define USBC_GLBLINTRMSK (1<<0) 208 #define USBC_GLBLINTRMSK_MASK (1<<0) 209 #define USBC_GLBLINTRMSK_SHIFT (0) 210 #define USBC_HBSTLEN(n) (((n)&15)<<1) 211 #define USBC_HBSTLEN_MASK (15<<1) 212 #define USBC_HBSTLEN_SHIFT (1) 213 #define USBC_DMAEN (1<<5) 214 #define USBC_DMAEN_MASK (1<<5) 215 #define USBC_DMAEN_SHIFT (5) 216 #define USBC_NPTXFEMPLVL (1<<7) 217 #define USBC_NPTXFEMPLVL_MASK (1<<7) 218 #define USBC_NPTXFEMPLVL_SHIFT (7) 219 #define USBC_PTXFEMPLVL (1<<8) 220 #define USBC_PTXFEMPLVL_MASK (1<<8) 221 #define USBC_PTXFEMPLVL_SHIFT (8) 222 223 //GUSBCFG 224 #define USBC_TOUTCAL(n) (((n)&7)<<0) 225 #define USBC_TOUTCAL_MASK (7<<0) 226 #define USBC_TOUTCAL_SHIFT (0) 227 #define USBC_PHYIF (1<<3) 228 #define USBC_PHYIF_MASK (1<<3) 229 #define USBC_PHYIF_SHIFT (3) 230 #define USBC_ULPI_UTMI_SEL (1<<4) 231 #define USBC_ULPI_UTMI_SEL_MASK (1<<4) 232 #define USBC_ULPI_UTMI_SEL_SHIFT (4) 233 #define USBC_FSINTF (1<<5) 234 #define USBC_FSINTF_MASK (1<<5) 235 #define USBC_FSINTF_SHIFT (5) 236 #define USBC_PHYSEL (1<<6) 237 #define USBC_PHYSEL_MASK (1<<6) 238 #define USBC_PHYSEL_SHIFT (6) 239 #define USBC_DDRSEL (1<<7) 240 #define USBC_DDRSEL_MASK (1<<7) 241 #define USBC_DDRSEL_SHIFT (7) 242 #define USBC_SRPCAP (1<<8) 243 #define USBC_SRPCAP_MASK (1<<8) 244 #define USBC_SRPCAP_SHIFT (8) 245 #define USBC_HNPCAP (1<<9) 246 #define USBC_HNPCAP_MASK (1<<9) 247 #define USBC_HNPCAP_SHIFT (9) 248 #define USBC_USBTRDTIM(n) (((n)&15)<<10) 249 #define USBC_USBTRDTIM_MASK (15<<10) 250 #define USBC_USBTRDTIM_SHIFT (10) 251 #define USBC_PHYPWRCLKSEL (1<<15) 252 #define USBC_PHYPWRCLKSEL_MASK (1<<15) 253 #define USBC_PHYPWRCLKSEL_SHIFT (15) 254 #define USBC_OTGI2CSEL (1<<16) 255 #define USBC_OTGI2CSEL_MASK (1<<16) 256 #define USBC_OTGI2CSEL_SHIFT (16) 257 #define USBC_ULPIFSLS (1<<17) 258 #define USBC_ULPIFSLS_MASK (1<<17) 259 #define USBC_ULPIFSLS_SHIFT (17) 260 #define USBC_ULPIAUTORES (1<<18) 261 #define USBC_ULPIAUTORES_MASK (1<<18) 262 #define USBC_ULPIAUTORES_SHIFT (18) 263 #define USBC_ULPICLKSUSM (1<<19) 264 #define USBC_ULPICLKSUSM_MASK (1<<19) 265 #define USBC_ULPICLKSUSM_SHIFT (19) 266 #define USBC_ULPIEXTVBUSDRV (1<<20) 267 #define USBC_ULPIEXTVBUSDRV_MASK (1<<20) 268 #define USBC_ULPIEXTVBUSDRV_SHIFT (20) 269 #define USBC_ULPIEXTVBUSINDICATOR (1<<21) 270 #define USBC_ULPIEXTVBUSINDICATOR_MASK (1<<21) 271 #define USBC_ULPIEXTVBUSINDICATOR_SHIFT (21) 272 #define USBC_TERMSELDLPULSE (1<<22) 273 #define USBC_TERMSELDLPULSE_MASK (1<<22) 274 #define USBC_TERMSELDLPULSE_SHIFT (22) 275 #define USBC_FORCEHSTMODE (1<<29) 276 #define USBC_FORCEHSTMODE_MASK (1<<29) 277 #define USBC_FORCEHSTMODE_SHIFT (29) 278 #define USBC_FORCEDEVMODE (1<<30) 279 #define USBC_FORCEDEVMODE_MASK (1<<30) 280 #define USBC_FORCEDEVMODE_SHIFT (30) 281 #define USBC_CORRUPTTXPACKET (1<<31) 282 #define USBC_CORRUPTTXPACKET_MASK (1<<31) 283 #define USBC_CORRUPTTXPACKET_SHIFT (31) 284 285 //GRSTCTL 286 #define USBC_CSFTRST (1<<0) 287 #define USBC_CSFTRST_MASK (1<<0) 288 #define USBC_CSFTRST_SHIFT (0) 289 #define USBC_FRMCNTRRST (1<<2) 290 #define USBC_FRMCNTRRST_MASK (1<<2) 291 #define USBC_FRMCNTRRST_SHIFT (2) 292 #define USBC_INTKNQFLSH (1<<3) 293 #define USBC_INTKNQFLSH_MASK (1<<3) 294 #define USBC_INTKNQFLSH_SHIFT (3) 295 #define USBC_RXFFLSH (1<<4) 296 #define USBC_RXFFLSH_MASK (1<<4) 297 #define USBC_RXFFLSH_SHIFT (4) 298 #define USBC_TXFFLSH (1<<5) 299 #define USBC_TXFFLSH_MASK (1<<5) 300 #define USBC_TXFFLSH_SHIFT (5) 301 #define USBC_TXFNUM(n) (((n)&31)<<6) 302 #define USBC_TXFNUM_MASK (31<<6) 303 #define USBC_TXFNUM_SHIFT (6) 304 #define USBC_DMAREQ (1<<30) 305 #define USBC_DMAREQ_MASK (1<<30) 306 #define USBC_DMAREQ_SHIFT (30) 307 #define USBC_AHBIDLE (1<<31) 308 #define USBC_AHBIDLE_MASK (1<<31) 309 #define USBC_AHBIDLE_SHIFT (31) 310 311 //GINTSTS 312 #define USBC_CURMOD (1<<0) 313 #define USBC_CURMOD_MASK (1<<0) 314 #define USBC_CURMOD_SHIFT (0) 315 #define USBC_MODEMIS (1<<1) 316 #define USBC_MODEMIS_MASK (1<<1) 317 #define USBC_MODEMIS_SHIFT (1) 318 #define USBC_OTGINT (1<<2) 319 #define USBC_OTGINT_MASK (1<<2) 320 #define USBC_OTGINT_SHIFT (2) 321 #define USBC_SOF (1<<3) 322 #define USBC_SOF_MASK (1<<3) 323 #define USBC_SOF_SHIFT (3) 324 #define USBC_RXFLVL (1<<4) 325 #define USBC_RXFLVL_MASK (1<<4) 326 #define USBC_RXFLVL_SHIFT (4) 327 #define USBC_NPTXFEMP (1<<5) 328 #define USBC_NPTXFEMP_MASK (1<<5) 329 #define USBC_NPTXFEMP_SHIFT (5) 330 #define USBC_GINNAKEFF (1<<6) 331 #define USBC_GINNAKEFF_MASK (1<<6) 332 #define USBC_GINNAKEFF_SHIFT (6) 333 #define USBC_GOUTNAKEFF (1<<7) 334 #define USBC_GOUTNAKEFF_MASK (1<<7) 335 #define USBC_GOUTNAKEFF_SHIFT (7) 336 #define USBC_ULPICKINT (1<<8) 337 #define USBC_ULPICKINT_MASK (1<<8) 338 #define USBC_ULPICKINT_SHIFT (8) 339 #define USBC_I2CINT (1<<9) 340 #define USBC_I2CINT_MASK (1<<9) 341 #define USBC_I2CINT_SHIFT (9) 342 #define USBC_ERLYSUSP (1<<10) 343 #define USBC_ERLYSUSP_MASK (1<<10) 344 #define USBC_ERLYSUSP_SHIFT (10) 345 #define USBC_USBSUSP (1<<11) 346 #define USBC_USBSUSP_MASK (1<<11) 347 #define USBC_USBSUSP_SHIFT (11) 348 #define USBC_USBRST (1<<12) 349 #define USBC_USBRST_MASK (1<<12) 350 #define USBC_USBRST_SHIFT (12) 351 #define USBC_ENUMDONE (1<<13) 352 #define USBC_ENUMDONE_MASK (1<<13) 353 #define USBC_ENUMDONE_SHIFT (13) 354 #define USBC_ISOOUTDROP (1<<14) 355 #define USBC_ISOOUTDROP_MASK (1<<14) 356 #define USBC_ISOOUTDROP_SHIFT (14) 357 #define USBC_EOPF (1<<15) 358 #define USBC_EOPF_MASK (1<<15) 359 #define USBC_EOPF_SHIFT (15) 360 #define USBC_EPMIS (1<<17) 361 #define USBC_EPMIS_MASK (1<<17) 362 #define USBC_EPMIS_SHIFT (17) 363 #define USBC_IEPINT (1<<18) 364 #define USBC_IEPINT_MASK (1<<18) 365 #define USBC_IEPINT_SHIFT (18) 366 #define USBC_OEPINT (1<<19) 367 #define USBC_OEPINT_MASK (1<<19) 368 #define USBC_OEPINT_SHIFT (19) 369 #define USBC_INCOMPISOIN (1<<20) 370 #define USBC_INCOMPISOIN_MASK (1<<20) 371 #define USBC_INCOMPISOIN_SHIFT (20) 372 #define USBC_INCOMPISOOUT (1<<21) 373 #define USBC_INCOMPISOOUT_MASK (1<<21) 374 #define USBC_INCOMPISOOUT_SHIFT (21) 375 #define USBC_FETSUSP (1<<22) 376 #define USBC_FETSUSP_MASK (1<<22) 377 #define USBC_FETSUSP_SHIFT (22) 378 #define USBC_PRTINT (1<<24) 379 #define USBC_PRTINT_MASK (1<<24) 380 #define USBC_PRTINT_SHIFT (24) 381 #define USBC_HCHINT (1<<25) 382 #define USBC_HCHINT_MASK (1<<25) 383 #define USBC_HCHINT_SHIFT (25) 384 #define USBC_PTXFEMP (1<<26) 385 #define USBC_PTXFEMP_MASK (1<<26) 386 #define USBC_PTXFEMP_SHIFT (26) 387 #define USBC_LPM_INT (1<<27) 388 #define USBC_LPM_INT_MASK (1<<27) 389 #define USBC_LPM_INT_SHIFT (27) 390 #define USBC_CONLDSTSCHNG (1<<28) 391 #define USBC_CONLDSTSCHNG_MASK (1<<28) 392 #define USBC_CONLDSTSCHNG_SHIFT (28) 393 #define USBC_DISCONNINT (1<<29) 394 #define USBC_DISCONNINT_MASK (1<<29) 395 #define USBC_DISCONNINT_SHIFT (29) 396 #define USBC_SESSREQINT (1<<30) 397 #define USBC_SESSREQINT_MASK (1<<30) 398 #define USBC_SESSREQINT_SHIFT (30) 399 #define USBC_WKUPINT (1<<31) 400 #define USBC_WKUPINT_MASK (1<<31) 401 #define USBC_WKUPINT_SHIFT (31) 402 403 //GINTMSK 404 //#define USBC_MODEMIS (1<<1) 405 //#define USBC_MODEMIS_MASK (1<<1) 406 //#define USBC_MODEMIS_SHIFT (1) 407 //#define USBC_OTGINT (1<<2) 408 //#define USBC_OTGINT_MASK (1<<2) 409 //#define USBC_OTGINT_SHIFT (2) 410 //#define USBC_SOF (1<<3) 411 //#define USBC_SOF_MASK (1<<3) 412 //#define USBC_SOF_SHIFT (3) 413 //#define USBC_RXFLVL (1<<4) 414 //#define USBC_RXFLVL_MASK (1<<4) 415 //#define USBC_RXFLVL_SHIFT (4) 416 //#define USBC_NPTXFEMP (1<<5) 417 //#define USBC_NPTXFEMP_MASK (1<<5) 418 //#define USBC_NPTXFEMP_SHIFT (5) 419 //#define USBC_GINNAKEFF (1<<6) 420 //#define USBC_GINNAKEFF_MASK (1<<6) 421 //#define USBC_GINNAKEFF_SHIFT (6) 422 //#define USBC_GOUTNAKEFF (1<<7) 423 //#define USBC_GOUTNAKEFF_MASK (1<<7) 424 //#define USBC_GOUTNAKEFF_SHIFT (7) 425 //#define USBC_ULPICKINT (1<<8) 426 //#define USBC_ULPICKINT_MASK (1<<8) 427 //#define USBC_ULPICKINT_SHIFT (8) 428 //#define USBC_I2CINT (1<<9) 429 //#define USBC_I2CINT_MASK (1<<9) 430 //#define USBC_I2CINT_SHIFT (9) 431 //#define USBC_ERLYSUSP (1<<10) 432 //#define USBC_ERLYSUSP_MASK (1<<10) 433 //#define USBC_ERLYSUSP_SHIFT (10) 434 //#define USBC_USBSUSP (1<<11) 435 //#define USBC_USBSUSP_MASK (1<<11) 436 //#define USBC_USBSUSP_SHIFT (11) 437 //#define USBC_USBRST (1<<12) 438 //#define USBC_USBRST_MASK (1<<12) 439 //#define USBC_USBRST_SHIFT (12) 440 //#define USBC_ENUMDONE (1<<13) 441 //#define USBC_ENUMDONE_MASK (1<<13) 442 //#define USBC_ENUMDONE_SHIFT (13) 443 //#define USBC_ISOOUTDROP (1<<14) 444 //#define USBC_ISOOUTDROP_MASK (1<<14) 445 //#define USBC_ISOOUTDROP_SHIFT (14) 446 //#define USBC_EOPF (1<<15) 447 //#define USBC_EOPF_MASK (1<<15) 448 //#define USBC_EOPF_SHIFT (15) 449 //#define USBC_EPMIS (1<<17) 450 //#define USBC_EPMIS_MASK (1<<17) 451 //#define USBC_EPMIS_SHIFT (17) 452 //#define USBC_IEPINT (1<<18) 453 //#define USBC_IEPINT_MASK (1<<18) 454 //#define USBC_IEPINT_SHIFT (18) 455 //#define USBC_OEPINT (1<<19) 456 //#define USBC_OEPINT_MASK (1<<19) 457 //#define USBC_OEPINT_SHIFT (19) 458 //#define USBC_INCOMPLSOIN (1<<20) 459 //#define USBC_INCOMPLSOIN_MASK (1<<20) 460 //#define USBC_INCOMPLSOIN_SHIFT (20) 461 //#define USBC_INCOMPIP (1<<21) 462 //#define USBC_INCOMPIP_MASK (1<<21) 463 //#define USBC_INCOMPIP_SHIFT (21) 464 //#define USBC_FETSUSP (1<<22) 465 //#define USBC_FETSUSP_MASK (1<<22) 466 //#define USBC_FETSUSP_SHIFT (22) 467 //#define USBC_PRTINT (1<<24) 468 //#define USBC_PRTINT_MASK (1<<24) 469 //#define USBC_PRTINT_SHIFT (24) 470 //#define USBC_HCHINT (1<<25) 471 //#define USBC_HCHINT_MASK (1<<25) 472 //#define USBC_HCHINT_SHIFT (25) 473 //#define USBC_PTXFEMP (1<<26) 474 //#define USBC_PTXFEMP_MASK (1<<26) 475 //#define USBC_PTXFEMP_SHIFT (26) 476 //#define USBC_CONLDSTSCHNG (1<<28) 477 //#define USBC_CONLDSTSCHNG_MASK (1<<28) 478 //#define USBC_CONLDSTSCHNG_SHIFT (28) 479 //#define USBC_DISCONNINT (1<<29) 480 //#define USBC_DISCONNINT_MASK (1<<29) 481 //#define USBC_DISCONNINT_SHIFT (29) 482 //#define USBC_SESSREQINT (1<<30) 483 //#define USBC_SESSREQINT_MASK (1<<30) 484 //#define USBC_SESSREQINT_SHIFT (30) 485 //#define USBC_WKUPINT (1<<31) 486 //#define USBC_WKUPINT_MASK (1<<31) 487 //#define USBC_WKUPINT_SHIFT (31) 488 489 //GRXSTSR 490 #define USBC_EPNUM(n) (((n)&15)<<0) 491 #define USBC_EPNUM_MASK (15<<0) 492 #define USBC_EPNUM_SHIFT (0) 493 #define USBC_BCNT(n) (((n)&0x7FF)<<4) 494 #define USBC_BCNT_MASK (0x7FF<<4) 495 #define USBC_BCNT_SHIFT (4) 496 #define USBC_DPID(n) (((n)&3)<<15) 497 #define USBC_DPID_MASK (3<<15) 498 #define USBC_DPID_SHIFT (15) 499 #define USBC_PKTSTS(n) (((n)&15)<<17) 500 #define USBC_PKTSTS_MASK (15<<17) 501 #define USBC_PKTSTS_SHIFT (17) 502 #define USBC_FN(n) (((n)&15)<<21) 503 #define USBC_FN_MASK (15<<21) 504 #define USBC_FN_SHIFT (21) 505 506 //GRXSTSP 507 //#define USBC_EPNUM(n) (((n)&15)<<0) 508 //#define USBC_EPNUM_MASK (15<<0) 509 //#define USBC_EPNUM_SHIFT (0) 510 //#define USBC_BCNT(n) (((n)&0x7FF)<<4) 511 //#define USBC_BCNT_MASK (0x7FF<<4) 512 //#define USBC_BCNT_SHIFT (4) 513 //#define USBC_DPID(n) (((n)&3)<<15) 514 //#define USBC_DPID_MASK (3<<15) 515 //#define USBC_DPID_SHIFT (15) 516 //#define USBC_PKTSTS(n) (((n)&15)<<17) 517 //#define USBC_PKTSTS_MASK (15<<17) 518 //#define USBC_PKTSTS_SHIFT (17) 519 //#define USBC_FN(n) (((n)&15)<<21) 520 //#define USBC_FN_MASK (15<<21) 521 //#define USBC_FN_SHIFT (21) 522 523 //GRXFSIZ 524 #define USBC_RXFDEP(n) (((n)&0xFFFF)<<0) 525 #define USBC_RXFDEP_MASK (0xFFFF<<0) 526 #define USBC_RXFDEP_SHIFT (0) 527 528 //GNPTXFSIZ 529 #define USBC_NPTXFSTADDR(n) (((n)&0xFFFF)<<0) 530 #define USBC_NPTXFSTADDR_MASK (0xFFFF<<0) 531 #define USBC_NPTXFSTADDR_SHIFT (0) 532 #define USBC_NPTXFDEPS(n) (((n)&0xFFFF)<<16) 533 #define USBC_NPTXFDEPS_MASK (0xFFFF<<16) 534 #define USBC_NPTXFDEPS_SHIFT (16) 535 536 //GNPTXSTS 537 #define USBC_NPTXFSPCAVAIL(n) (((n)&0xFFFF)<<0) 538 #define USBC_NPTXFSPCAVAIL_MASK (0xFFFF<<0) 539 #define USBC_NPTXFSPCAVAIL_SHIFT (0) 540 #define USBC_NPTXQSPCAVAIL(n) (((n)&0xFF)<<16) 541 #define USBC_NPTXQSPCAVAIL_MASK (0xFF<<16) 542 #define USBC_NPTXQSPCAVAIL_SHIFT (16) 543 #define USBC_NPTXQTOP(n) (((n)&0x7F)<<24) 544 #define USBC_NPTXQTOP_MASK (0x7F<<24) 545 #define USBC_NPTXQTOP_SHIFT (24) 546 547 //GPVNDCTL 548 #define USBC_GPVNDCTL_DISULPIDRVR (1<<31) 549 #define USBC_GPVNDCTL_DISULPIDRVR_MASK (1<<31) 550 #define USBC_GPVNDCTL_DISULPIDRVR_SHIFT (31) 551 #define USBC_GPVNDCTL_VSTSDONE (1<<27) 552 #define USBC_GPVNDCTL_VSTSDONE_MASK (1<<27) 553 #define USBC_GPVNDCTL_VSTSDONE_SHIFT (27) 554 #define USBC_GPVNDCTL_VSTSBSY (1<<26) 555 #define USBC_GPVNDCTL_VSTSBSY_MASK (1<<26) 556 #define USBC_GPVNDCTL_VSTSBSY_SHIFT (26) 557 #define USBC_GPVNDCTL_NEWREGREQ (1<<25) 558 #define USBC_GPVNDCTL_NEWREGREQ_MASK (1<<25) 559 #define USBC_GPVNDCTL_NEWREGREQ_SHIFT (25) 560 #define USBC_GPVNDCTL_REGWR (1<<22) 561 #define USBC_GPVNDCTL_REGWR_MASK (1<<22) 562 #define USBC_GPVNDCTL_REGWR_SHIFT (22) 563 #define USBC_GPVNDCTL_REGADDR(n) (((n)&0x3f)<<16) 564 #define USBC_GPVNDCTL_REGADDR_MASK (0x3f<<16) 565 #define USBC_GPVNDCTL_REGADDR_SHIFT (16) 566 #define USBC_GPVNDCTL_EXTREGADDR(n) (((n)&0xff)<<8) 567 #define USBC_GPVNDCTL_EXTREGADDR_MASK (0xff<<8) 568 #define USBC_GPVNDCTL_EXTREGADDR_SHIFT (8) 569 #define USBC_GPVNDCTL_REGDATA(n) (((n)&0xff)<<0) 570 #define USBC_GPVNDCTL_REGDATA_MASK (0xff<<0) 571 #define USBC_GPVNDCTL_REGDATA_SHIFT (0) 572 573 //GUID 574 #define USBC_USERID(n) (((n)&0xFFFFFFFF)<<0) 575 #define USBC_USERID_MASK (0xFFFFFFFF<<0) 576 #define USBC_USERID_SHIFT (0) 577 578 //GSNPSID 579 #define USBC_SYNOPSYSID(n) (((n)&0xFFFFFFFF)<<0) 580 #define USBC_SYNOPSYSID_MASK (0xFFFFFFFF<<0) 581 #define USBC_SYNOPSYSID_SHIFT (0) 582 583 //GHWCFG1 584 #define USBC_EPDIR(n) (((n)&0xFFFFFFFF)<<0) 585 #define USBC_EPDIR_MASK (0xFFFFFFFF<<0) 586 #define USBC_EPDIR_SHIFT (0) 587 588 //GHWCFG2 589 #define USBC_OTGMODE(n) (((n)&7)<<0) 590 #define USBC_OTGMODE_MASK (7<<0) 591 #define USBC_OTGMODE_SHIFT (0) 592 #define USBC_OTGARCH(n) (((n)&3)<<3) 593 #define USBC_OTGARCH_MASK (3<<3) 594 #define USBC_OTGARCH_SHIFT (3) 595 #define USBC_SINGPNT (1<<5) 596 #define USBC_SINGPNT_MASK (1<<5) 597 #define USBC_SINGPNT_SHIFT (5) 598 #define USBC_HSPHYTYPE(n) (((n)&3)<<6) 599 #define USBC_HSPHYTYPE_MASK (3<<6) 600 #define USBC_HSPHYTYPE_SHIFT (6) 601 #define USBC_FSPHYTYPE(n) (((n)&3)<<8) 602 #define USBC_FSPHYTYPE_MASK (3<<8) 603 #define USBC_FSPHYTYPE_SHIFT (8) 604 #define USBC_NUMDEVEPS(n) (((n)&15)<<10) 605 #define USBC_NUMDEVEPS_MASK (15<<10) 606 #define USBC_NUMDEVEPS_SHIFT (10) 607 #define USBC_NUMHSTCHNL(n) (((n)&15)<<14) 608 #define USBC_NUMHSTCHNL_MASK (15<<14) 609 #define USBC_NUMHSTCHNL_SHIFT (14) 610 #define USBC_PERIOSUPPORT (1<<18) 611 #define USBC_PERIOSUPPORT_MASK (1<<18) 612 #define USBC_PERIOSUPPORT_SHIFT (18) 613 #define USBC_DYNFIFOSIZING (1<<19) 614 #define USBC_DYNFIFOSIZING_MASK (1<<19) 615 #define USBC_DYNFIFOSIZING_SHIFT (19) 616 #define USBC_NPTXQDEPTH(n) (((n)&3)<<22) 617 #define USBC_NPTXQDEPTH_MASK (3<<22) 618 #define USBC_NPTXQDEPTH_SHIFT (22) 619 #define USBC_PTXQDEPTH(n) (((n)&3)<<24) 620 #define USBC_PTXQDEPTH_MASK (3<<24) 621 #define USBC_PTXQDEPTH_SHIFT (24) 622 #define USBC_TKNQDEPTH(n) (((n)&31)<<26) 623 #define USBC_TKNQDEPTH_MASK (31<<26) 624 #define USBC_TKNQDEPTH_SHIFT (26) 625 626 //GHWCFG3 627 #define USBC_XFERSIZEWIDTH(n) (((n)&15)<<0) 628 #define USBC_XFERSIZEWIDTH_MASK (15<<0) 629 #define USBC_XFERSIZEWIDTH_SHIFT (0) 630 #define USBC_PKTSIZEWIDTH(n) (((n)&7)<<4) 631 #define USBC_PKTSIZEWIDTH_MASK (7<<4) 632 #define USBC_PKTSIZEWIDTH_SHIFT (4) 633 #define USBC_OTGEN (1<<7) 634 #define USBC_OTGEN_MASK (1<<7) 635 #define USBC_OTGEN_SHIFT (7) 636 #define USBC_I2CINTSEL (1<<8) 637 #define USBC_I2CINTSEL_MASK (1<<8) 638 #define USBC_I2CINTSEL_SHIFT (8) 639 //#define USBC_VNDCTLSUPT (1<<9) 640 #define USBC_VNDCTLSUPT(n) (((n)&0x1)<<9) 641 #define USBC_VNDCTLSUPT_MASK (1<<9) 642 #define USBC_VNDCTLSUPT_SHIFT (9) 643 #define USBC_OPTFEATURE (1<<10) 644 #define USBC_OPTFEATURE_MASK (1<<10) 645 #define USBC_OPTFEATURE_SHIFT (10) 646 #define USBC_RSTTYPE (1<<11) 647 #define USBC_RSTTYPE_MASK (1<<11) 648 #define USBC_RSTTYPE_SHIFT (11) 649 #define USBC_DFIFODEPTH(n) (((n)&0xFFFF)<<16) 650 #define USBC_DFIFODEPTH_MASK (0xFFFF<<16) 651 #define USBC_DFIFODEPTH_SHIFT (16) 652 653 //GHWCFG4 654 #define USBC_NUMDEVPERIOEPS(n) (((n)&15)<<0) 655 #define USBC_NUMDEVPERIOEPS_MASK (15<<0) 656 #define USBC_NUMDEVPERIOEPS_SHIFT (0) 657 #define USBC_ENABLEPWROPT (1<<4) 658 #define USBC_ENABLEPWROPT_MASK (1<<4) 659 #define USBC_ENABLEPWROPT_SHIFT (4) 660 #define USBC_AHBFREQ (1<<5) 661 #define USBC_AHBFREQ_MASK (1<<5) 662 #define USBC_AHBFREQ_SHIFT (5) 663 #define USBC_PHYDATAWIDTH(n) (((n)&3)<<14) 664 #define USBC_PHYDATAWIDTH_MASK (3<<14) 665 #define USBC_PHYDATAWIDTH_SHIFT (14) 666 #define USBC_NUMCTLEPS(n) (((n)&15)<<16) 667 #define USBC_NUMCTLEPS_MASK (15<<16) 668 #define USBC_NUMCTLEPS_SHIFT (16) 669 #define USBC_IDDIGFLTR (1<<20) 670 #define USBC_IDDIGFLTR_MASK (1<<20) 671 #define USBC_IDDIGFLTR_SHIFT (20) 672 #define USBC_VBUSVALIDFLTR (1<<21) 673 #define USBC_VBUSVALIDFLTR_MASK (1<<21) 674 #define USBC_VBUSVALIDFLTR_SHIFT (21) 675 #define USBC_AVALIDFLTR (1<<22) 676 #define USBC_AVALIDFLTR_MASK (1<<22) 677 #define USBC_AVALIDFLTR_SHIFT (22) 678 #define USBC_BVALIDFLTR (1<<23) 679 #define USBC_BVALIDFLTR_MASK (1<<23) 680 #define USBC_BVALIDFLTR_SHIFT (23) 681 #define USBC_SESSENDFLTR (1<<24) 682 #define USBC_SESSENDFLTR_MASK (1<<24) 683 #define USBC_SESSENDFLTR_SHIFT (24) 684 #define USBC_DEFIFOMODE (1<<25) 685 #define USBC_DEFIFOMODE_MASK (1<<25) 686 #define USBC_DEFIFOMODE_SHIFT (25) 687 #define USBC_INEPS(n) (((n)&15)<<26) 688 #define USBC_INEPS_MASK (15<<26) 689 #define USBC_INEPS_SHIFT (26) 690 691 //GLPMCFG 692 #define USBC_LPMCAP (1<<0) 693 #define USBC_LPMCAP_MASK (1<<0) 694 #define USBC_LPMCAP_SHIFT (0) 695 #define USBC_APPL1RES (1<<1) 696 #define USBC_APPL1RES_MASK (1<<1) 697 #define USBC_APPL1RES_SHIFT (1) 698 #define USBC_HIRD(n) (((n)&15)<<2) 699 #define USBC_HIRD_MASK (15<<2) 700 #define USBC_HIRD_SHIFT (2) 701 #define USBC_BREMOTEWAKE (1 << 6) 702 #define USBC_BREMOTEWAKE_MASK (1 << 6) 703 #define USBC_BREMOTEWAKE_SHIFT (6) 704 #define USBC_ENBLSLPM (1<<7) 705 #define USBC_ENBLSLPM_MASK (1<<7) 706 #define USBC_ENBLSLPM_SHIFT (7) 707 #define USBC_HIRD_THRES(n) (((n)&15)<<8) 708 #define USBC_HIRD_THRES_MASK (15<<8) 709 #define USBC_HIRD_THRES_SHIFT (8) 710 #define USBC_HIRD_THRES_BIT4 (1 << 12) 711 #define USBC_HIRD_THRES_BIT4_MASK (1 << 12) 712 #define USBC_HIRD_THRES_BIT4_SHIFT (12) 713 #define USBC_COREL1RES(n) (((n)&3)<<13) 714 #define USBC_COREL1RES_MASK (3<<13) 715 #define USBC_COREL1RES_SHIFT (13) 716 #define USBC_SLPSTS (1<<15) 717 #define USBC_SLPSTS_MASK (1<<15) 718 #define USBC_SLPSTS_SHIFT (15) 719 #define USBC_L1RESUMEOK (1<<16) 720 #define USBC_L1RESUMEOK_MASK (1<<16) 721 #define USBC_L1RESUMEOK_SHIFT (16) 722 #define USBC_ENBESL (1<<28) 723 #define USBC_ENBESL_MASK (1<<28) 724 #define USBC_ENBESL_SHIFT (28) 725 #define USBC_RSTRSLPSTS (1<<29) 726 #define USBC_RSTRSLPSTS_MASK (1<<29) 727 #define USBC_RSTRSLPSTS_SHIFT (29) 728 729 //GDFIFOCFG 730 #define USBC_GDFIFOCFG_SHIFT 0 731 #define USBC_GDFIFOCFG_MASK (0xFFFF << USBC_GDFIFOCFG_SHIFT) 732 #define USBC_GDFIFOCFG(n) BITFIELD_VAL(USBC_GDFIFOCFG, n) 733 #define USBC_EPINFOBASEADDR_SHIFT 16 734 #define USBC_EPINFOBASEADDR_MASK (0xFFFF << USBC_EPINFOBASEADDR_SHIFT) 735 #define USBC_EPINFOBASEADDR(n) BITFIELD_VAL(USBC_EPINFOBASEADDR, n) 736 737 //DPTXFSIZn 738 #define USBC_DPTXFSTADDR(n) (((n)&0xFFFF)<<0) 739 #define USBC_DPTXFSTADDR_MASK (0xFFFF<<0) 740 #define USBC_DPTXFSTADDR_SHIFT (0) 741 #define USBC_DPTXFSIZE(n) (((n)&0xFFFF)<<16) 742 #define USBC_DPTXFSIZE_MASK (0xFFFF<<16) 743 #define USBC_DPTXFSIZE_SHIFT (16) 744 745 //DIEPTXFn 746 #define USBC_INEPNTXFSTADDR(n) (((n)&0xFFFF)<<0) 747 #define USBC_INEPNTXFSTADDR_MASK (0xFFFF<<0) 748 #define USBC_INEPNTXFSTADDR_SHIFT (0) 749 #define USBC_INEPNTXFDEP(n) (((n)&0xFFFF)<<16) 750 #define USBC_INEPNTXFDEP_MASK (0xFFFF<<16) 751 #define USBC_INEPNTXFDEP_SHIFT (16) 752 753 //HPTXFSIZ 754 #define USBC_HPTXFSIZ_PTXFSTADDR(n) (((n)&0xFFFF)<<0) 755 #define USBC_HPTXFSIZ_PTXFSTADDR_MASK (0xFFFF<<0) 756 #define USBC_HPTXFSIZ_PTXFSTADDR_SHIFT (0) 757 #define USBC_HPTXFSIZ_PTXFSIZE(n) (((n)&0xFFFF)<<16) 758 #define USBC_HPTXFSIZ_PTXFSIZE_MASK (0xFFFF<<16) 759 #define USBC_HPTXFSIZ_PTXFSIZE_SHIFT (16) 760 761 //HCFG 762 #define USBC_HCFG_MODECHTIMEN (1<<31) 763 #define USBC_HCFG_MODECHTIMEN_MASK (1<<31) 764 #define USBC_HCFG_MODECHTIMEN_SHIFT (31) 765 #define USBC_HCFG_PERSCHEDENA (1<<26) 766 #define USBC_HCFG_PERSCHEDENA_MASK (1<<26) 767 #define USBC_HCFG_PERSCHEDENA_SHIFT (26) 768 #define USBC_HCFG_FRLISTEN(n) (((n)&0x3)<<24) 769 #define USBC_HCFG_FRLISTEN_MASK (0x3<<24) 770 #define USBC_HCFG_FRLISTEN_SHIFT (24) 771 #define USBC_HCFG_DESCDMA (1<<23) 772 #define USBC_HCFG_DESCDMA_MASK (1<<23) 773 #define USBC_HCFG_DESCDMA_SHIFT (23) 774 #define USBC_HCFG_RESVALID(n) (((n)&0xff)<<8) 775 #define USBC_HCFG_RESVALID_MASK (0xff<<8) 776 #define USBC_HCFG_RESVALID_SHIFT (8) 777 #define USBC_HCFG_ENA32KHZS (1<<7) 778 #define USBC_HCFG_ENA32KHZS_MASK (1<<7) 779 #define USBC_HCFG_ENA32KHZS_SHIFT (7) 780 #define USBC_HCFG_FSLSSUPP (1<<2) 781 #define USBC_HCFG_FSLSSUPP_MASK (1<<2) 782 #define USBC_HCFG_FSLSSUPP_SHIFT (2) 783 #define USBC_HCFG_FSLSPCLKSEL(n) (((n)&0x3)<<0) 784 #define USBC_HCFG_FSLSPCLKSEL_MASK (0x3<<0) 785 #define USBC_HCFG_FSLSPCLKSEL_SHIFT (0) 786 787 //HFIR 788 #define USBC_HFIR_HFIRRLDCTRL (1<<16) 789 #define USBC_HFIR_HFIRRLDCTRL_MASK (1<<16) 790 #define USBC_HFIR_HFIRRLDCTRL_SHIFT (16) 791 #define USBC_HFIR_FRINT(n) (((n)&0xffff)<<0) 792 #define USBC_HFIR_FRINT_MASK (0xffff<<0) 793 #define USBC_HFIR_FRINT_SHIFT (0) 794 795 //HFNUM 796 #define USBC_HFNUM_FRREM(n) (((n)&0xffff)<<16) 797 #define USBC_HFNUM_FRREM_MASK (0xffff<<16) 798 #define USBC_HFNUM_FRREM_SHIFT (16) 799 #define USBC_HFNUM_FRNUM(n) (((n)&0xffff)<<0) 800 #define USBC_HFNUM_FRNUM_MASK (0xffff<<0) 801 #define USBC_HFNUM_FRNUM_SHIFT (0) 802 803 //HPTXSTS 804 #define USBC_HPTXSTS_PTXQTOP(n) (((n)&0xff)<<24) 805 #define USBC_HPTXSTS_PTXQTOP_MASK (0xff<<24) 806 #define USBC_HPTXSTS_PTXQTOP_SHIFT (24) 807 #define USBC_HPTXSTS_PTXQSPCAVAIL(n) (((n)&0xff)<<16) 808 #define USBC_HPTXSTS_PTXQSPCAVAIL_MASK (0xff<<16) 809 #define USBC_HPTXSTS_PTXQSPCAVAIL_SHIFT (16) 810 #define USBC_HPTXSTS_PTXFSPCAVAIL(n) (((n)&0xffff)<<0) 811 #define USBC_HPTXSTS_PTXFSPCAVAIL_MASK (0xffff<<0) 812 #define USBC_HPTXSTS_PTXFSPCAVAIL_SHIFT (0) 813 814 //HAINT 815 #define USBC_HAINT_HAINT(n) (((n)&0xffff)<<0) 816 #define USBC_HAINT_HAINT_MASK (0xffff<<0) 817 #define USBC_HAINT_HAINT_SHIFT (0) 818 819 //HAINTMSK 820 #define USBC_HAINTMSK_HAINTMSK(n) (((n)&0xffff)<<0) 821 #define USBC_HAINTMSK_HAINTMSK_MASK (0xffff<<0) 822 #define USBC_HAINTMSK_HAINTMSK_SHIFT (0) 823 824 //HPRT 825 #define USBC_HPRT_PRTSPD(n) (((n)&0x3)<<17) 826 #define USBC_HPRT_PRTSPD_MASK (0x3<<17) 827 #define USBC_HPRT_PRTSPD_SHIFT (17) 828 #define USBC_HPRT_PRTTSTCTL(n) (((n)&0xf)<<13) 829 #define USBC_HPRT_PRTTSTCTL_MASK (0xf<<13) 830 #define USBC_HPRT_PRTTSTCTL_SHIFT (13) 831 #define USBC_HPRT_PRTPWR (1<<12) 832 #define USBC_HPRT_PRTPWR_MASK (1<<12) 833 #define USBC_HPRT_PRTPWR_SHIFT (12) 834 #define USBC_HPRT_PRTLNSTS(n) (((n)&0x3)<<10) 835 #define USBC_HPRT_PRTLNSTS_MASK (0x3<<10) 836 #define USBC_HPRT_PRTLNSTS_SHIFT (10) 837 #define USBC_HPRT_PRTRST (1<<8) 838 #define USBC_HPRT_PRTRST_MASK (1<<8) 839 #define USBC_HPRT_PRTRST_SHIFT (8) 840 #define USBC_HPRT_PRTSUSP (1<<7) 841 #define USBC_HPRT_PRTSUSP_MASK (1<<7) 842 #define USBC_HPRT_PRTSUSP_SHIFT (7) 843 #define USBC_HPRT_PRTRES (1<<6) 844 #define USBC_HPRT_PRTRES_MASK (1<<6) 845 #define USBC_HPRT_PRTRES_SHIFT (6) 846 #define USBC_HPRT_PRTOVRCURRCHNG (1<<5) 847 #define USBC_HPRT_PRTOVRCURRCHNG_MASK (1<<5) 848 #define USBC_HPRT_PRTOVRCURRCHNG_SHIFT (5) 849 #define USBC_HPRT_PRTOVRCURRACT (1<<4) 850 #define USBC_HPRT_PRTOVRCURRACT_MASK (1<<4) 851 #define USBC_HPRT_PRTOVRCURRACT_SHIFT (4) 852 #define USBC_HPRT_PRTENCHNG (1<<3) 853 #define USBC_HPRT_PRTENCHNG_MASK (1<<3) 854 #define USBC_HPRT_PRTENCHNG_SHIFT (3) 855 #define USBC_HPRT_PRTENA (1<<2) 856 #define USBC_HPRT_PRTENA_MASK (1<<2) 857 #define USBC_HPRT_PRTENA_SHIFT (2) 858 #define USBC_HPRT_PRTCONNDET (1<<1) 859 #define USBC_HPRT_PRTCONNDET_MASK (1<<1) 860 #define USBC_HPRT_PRTCONNDET_SHIFT (1) 861 #define USBC_HPRT_PRTCONNSTS (1<<0) 862 #define USBC_HPRT_PRTCONNSTS_MASK (1<<0) 863 #define USBC_HPRT_PRTCONNSTS_SHIFT (0) 864 865 //HCCHARN 866 #define USBC_HCCHARN_CHENA (1<<31) 867 #define USBC_HCCHARN_CHENA_MASK (1<<31) 868 #define USBC_HCCHARN_CHENA_SHIFT (31) 869 #define USBC_HCCHARN_CHDIS (1<<30) 870 #define USBC_HCCHARN_CHDIS_MASK (1<<30) 871 #define USBC_HCCHARN_CHDIS_SHIFT (30) 872 #define USBC_HCCHARN_ODDFRM (1<<29) 873 #define USBC_HCCHARN_ODDFRM_MASK (1<<29) 874 #define USBC_HCCHARN_ODDFRM_SHIFT (29) 875 #define USBC_HCCHARN_DEVADDR(n) (((n)&0x7f)<<22) 876 #define USBC_HCCHARN_DEVADDR_MASK (0x7f<<22) 877 #define USBC_HCCHARN_DEVADDR_SHIFT (22) 878 #define USBC_HCCHARN_EC(n) (((n)&0x3)<<20) 879 #define USBC_HCCHARN_EC_MASK (0x3<<20) 880 #define USBC_HCCHARN_EC_SHIFT (20) 881 #define USBC_HCCHARN_EPTYPE(n) (((n)&0x3)<<18) 882 #define USBC_HCCHARN_EPTYPE_MASK (0x3<<18) 883 #define USBC_HCCHARN_EPTYPE_SHIFT (18) 884 #define USBC_HCCHARN_LSPDDEV (1<<17) 885 #define USBC_HCCHARN_LSPDDEV_MASK (1<<17) 886 #define USBC_HCCHARN_LSPDDEV_SHIFT (17) 887 #define USBC_HCCHARN_EPDIR (1<<15) 888 #define USBC_HCCHARN_EPDIR_MASK (1<<15) 889 #define USBC_HCCHARN_EPDIR_SHIFT (15) 890 #define USBC_HCCHARN_EPNUM(n) (((n)&0xf)<<11) 891 #define USBC_HCCHARN_EPNUM_MASK (0xf<<11) 892 #define USBC_HCCHARN_EPNUM_SHIFT (11) 893 #define USBC_HCCHARN_MPS(n) (((n)&0x7ff)<<0) 894 #define USBC_HCCHARN_MPS_MASK (0x7ff<<0) 895 #define USBC_HCCHARN_MPS_SHIFT (0) 896 897 //HCSPLTN 898 #define USBC_HCSPLTN_SPLTENA (1<<31) 899 #define USBC_HCSPLTN_SPLTENA_MASK (1<<31) 900 #define USBC_HCSPLTN_SPLTENA_SHIFT (31) 901 #define USBC_HCSPLTN_COMPSPLT (1<<16) 902 #define USBC_HCSPLTN_COMPSPLT_MASK (1<<16) 903 #define USBC_HCSPLTN_COMPSPLT_SHIFT (16) 904 #define USBC_HCSPLTN_EPDIR(n) (((n)&0x3)<<14) 905 #define USBC_HCSPLTN_EPDIR_MASK (0x3<<14) 906 #define USBC_HCSPLTN_EPDIR_SHIFT (14) 907 #define USBC_HCSPLTN_EPNUM(n) (((n)&0x7f)<<7) 908 #define USBC_HCSPLTN_EPNUM_MASK (0x7f<<7) 909 #define USBC_HCSPLTN_EPNUM_SHIFT (7) 910 #define USBC_HCSPLTN_MPS(n) (((n)&0x7f)<<0) 911 #define USBC_HCSPLTN_MPS_MASK (0x7f<<0) 912 #define USBC_HCSPLTN_MPS_SHIFT (0) 913 914 //HCINTN 915 #define USBC_HCINTN_DESC_LST_ROLLINTR (1<<13) 916 #define USBC_HCINTN_DESC_LST_ROLLINTR_MASK (1<<13) 917 #define USBC_HCINTN_DESC_LST_ROLLINTR_SHIFT (13) 918 #define USBC_HCINTN_XCS_XACT_ERR (1<<12) 919 #define USBC_HCINTN_XCS_XACT_ERR_MASK (1<<12) 920 #define USBC_HCINTN_XCS_XACT_ERR_SHIFT (12) 921 #define USBC_HCINTN_BNAINTR (1<<11) 922 #define USBC_HCINTN_BNAINTR_MASK (1<<11) 923 #define USBC_HCINTN_BNAINTR_SHIFT (11) 924 #define USBC_HCINTN_DATATGLERR (1<<10) 925 #define USBC_HCINTN_DATATGLERR_MASK (1<<10) 926 #define USBC_HCINTN_DATATGLERR_SHIFT (10) 927 #define USBC_HCINTN_FRMOVRUN (1<<9) 928 #define USBC_HCINTN_FRMOVRUN_MASK (1<<9) 929 #define USBC_HCINTN_FRMOVRUN_SHIFT (9) 930 #define USBC_HCINTN_BBLERR (1<<8) 931 #define USBC_HCINTN_BBLERR_MASK (1<<8) 932 #define USBC_HCINTN_BBLERR_SHIFT (8) 933 #define USBC_HCINTN_XACTERR (1<<7) 934 #define USBC_HCINTN_XACTERR_MASK (1<<7) 935 #define USBC_HCINTN_XACTERR_SHIFT (7) 936 #define USBC_HCINTN_NYET (1<<6) 937 #define USBC_HCINTN_NYET_MASK (1<<6) 938 #define USBC_HCINTN_NYET_SHIFT (6) 939 #define USBC_HCINTN_ACK (1<<5) 940 #define USBC_HCINTN_ACK_MASK (1<<5) 941 #define USBC_HCINTN_ACK_SHIFT (5) 942 #define USBC_HCINTN_NAK (1<<4) 943 #define USBC_HCINTN_NAK_MASK (1<<4) 944 #define USBC_HCINTN_NAK_SHIFT (4) 945 #define USBC_HCINTN_STALL (1<<3) 946 #define USBC_HCINTN_STALL_MASK (1<<3) 947 #define USBC_HCINTN_STALL_SHIFT (3) 948 #define USBC_HCINTN_AHBERR (1<<2) 949 #define USBC_HCINTN_AHBERR_MASK (1<<2) 950 #define USBC_HCINTN_AHBERR_SHIFT (2) 951 #define USBC_HCINTN_CHHLTD (1<<1) 952 #define USBC_HCINTN_CHHLTD_MASK (1<<1) 953 #define USBC_HCINTN_CHHLTD_SHIFT (1) 954 #define USBC_HCINTN_XFERCOMPL (1<<0) 955 #define USBC_HCINTN_XFERCOMPL_MASK (1<<0) 956 #define USBC_HCINTN_XFERCOMPL_SHIFT (0) 957 958 //HCINTMSKN 959 #define USBC_HCINTMSKN_DESC_LST_ROLLINTRMSK (1<<13) 960 #define USBC_HCINTMSKN_DESC_LST_ROLLINTRMSK_MASK (1<<13) 961 #define USBC_HCINTMSKN_DESC_LST_ROLLINTRMSK_SHIFT (13) 962 #define USBC_HCINTMSKN_BNAINTRMSK (1<<11) 963 #define USBC_HCINTMSKN_BNAINTRMSK_MASK (1<<11) 964 #define USBC_HCINTMSKN_BNAINTRMSK_SHIFT (11) 965 #define USBC_HCINTMSKN_DATATGLERRMSK (1<<10) 966 #define USBC_HCINTMSKN_DATATGLERRMSK_MASK (1<<10) 967 #define USBC_HCINTMSKN_DATATGLERRMSK_SHIFT (10) 968 #define USBC_HCINTMSKN_FRMOVRUNMSK (1<<9) 969 #define USBC_HCINTMSKN_FRMOVRUNMSK_MASK (1<<9) 970 #define USBC_HCINTMSKN_FRMOVRUNMSK_SHIFT (9) 971 #define USBC_HCINTMSKN_BBLERRMSK (1<<8) 972 #define USBC_HCINTMSKN_BBLERRMSK_MASK (1<<8) 973 #define USBC_HCINTMSKN_BBLERRMSK_SHIFT (8) 974 #define USBC_HCINTMSKN_XACTERRMSK (1<<7) 975 #define USBC_HCINTMSKN_XACTERRMSK_MASK (1<<7) 976 #define USBC_HCINTMSKN_XACTERRMSK_SHIFT (7) 977 #define USBC_HCINTMSKN_NYETMSK (1<<6) 978 #define USBC_HCINTMSKN_NYETMSK_MASK (1<<6) 979 #define USBC_HCINTMSKN_NYETMSK_SHIFT (6) 980 #define USBC_HCINTMSKN_ACKMSK (1<<5) 981 #define USBC_HCINTMSKN_ACKMSK_MASK (1<<5) 982 #define USBC_HCINTMSKN_ACKMSK_SHIFT (5) 983 #define USBC_HCINTMSKN_NAKMSK (1<<4) 984 #define USBC_HCINTMSKN_NAKMSK_MASK (1<<4) 985 #define USBC_HCINTMSKN_NAKMSK_SHIFT (4) 986 #define USBC_HCINTMSKN_STALLMSK (1<<3) 987 #define USBC_HCINTMSKN_STALLMSK_MASK (1<<3) 988 #define USBC_HCINTMSKN_STALLMSK_SHIFT (3) 989 #define USBC_HCINTMSKN_AHBERRMSK (1<<2) 990 #define USBC_HCINTMSKN_AHBERRMSK_MASK (1<<2) 991 #define USBC_HCINTMSKN_AHBERRMSK_SHIFT (2) 992 #define USBC_HCINTMSKN_CHHLTDMSK (1<<1) 993 #define USBC_HCINTMSKN_CHHLTDMSK_MASK (1<<1) 994 #define USBC_HCINTMSKN_CHHLTDMSK_SHIFT (1) 995 #define USBC_HCINTMSKN_XFERCOMPLMSK (1<<0) 996 #define USBC_HCINTMSKN_XFERCOMPLMSK_MASK (1<<0) 997 #define USBC_HCINTMSKN_XFERCOMPLMSK_SHIFT (0) 998 999 //HCTSIZN 1000 //SCATTER/GATHER DMA MODE 1001 #define USBC_HCTSIZN_DOPNG (1<<31) 1002 #define USBC_HCTSIZN_DOPNG_MASK (1<<31) 1003 #define USBC_HCTSIZN_DOPNG_SHIFT (31) 1004 #define USBC_HCTSIZN_PID(n) (((n)&0x3)<<29) 1005 #define USBC_HCTSIZN_PID_MASK (0x3<<29) 1006 #define USBC_HCTSIZN_PID_SHIFT (29) 1007 #define USBC_HCTSIZN_NTD(n) (((n)&0xff)<<8) 1008 #define USBC_HCTSIZN_NTD_MASK (0xff<<8) 1009 #define USBC_HCTSIZN_NTD_SHIFT (8) 1010 #define USBC_HCTSIZN_SCHED(n) (((n)&0xff)<<0) 1011 #define USBC_HCTSIZN_SCHED_MASK (0xff<<0) 1012 #define USBC_HCTSIZN_SCHED_SHIFT (0) 1013 1014 //HCTSIZN 1015 //NON-SCATTER/GATHER DMA MODE 1016 #define USBC_HCTSIZN_DOPNG (1<<31) 1017 #define USBC_HCTSIZN_DOPNG_MASK (1<<31) 1018 #define USBC_HCTSIZN_DOPNG_SHIFT (31) 1019 #define USBC_HCTSIZN_PID(n) (((n)&0x3)<<29) 1020 #define USBC_HCTSIZN_PID_MASK (0x3<<29) 1021 #define USBC_HCTSIZN_PID_SHIFT (29) 1022 #define USBC_HCTSIZN_PKTCNT(n) (((n)&0x3ff)<<19) 1023 #define USBC_HCTSIZN_PKTCNT_MASK (0x3ff<<19) 1024 #define USBC_HCTSIZN_PKTCNT_SHIFT (19) 1025 #define USBC_HCTSIZN_XFERSIZE(n) (((n)&0x7ffff)<<0) 1026 #define USBC_HCTSIZN_XFERSIZE_MASK (0x7ffff<<0) 1027 #define USBC_HCTSIZN_XFERSIZE_SHIFT (0) 1028 1029 //HCDMAN 1030 //BUFFER DMA MODE 1031 #define USBC_HCDMAN_DMAADDR(n) (((n)&0xffffffff)<<0) 1032 #define USBC_HCDMAN_DMAADDR_MASK (0xffffffff<<0) 1033 #define USBC_HCDMAN_DMAADDR_SHIFT (0) 1034 1035 //HCDMABN 1036 #define USBC_HCDMABN_DMAADDR(n) (((n)&0xffffffff)<<0) 1037 #define USBC_HCDMABN_DMAADDR_MASK (0xffffffff<<0) 1038 #define USBC_HCDMABN_DMAADDR_SHIFT (0) 1039 1040 //DCFG 1041 #define USBC_DEVSPD(n) (((n)&3)<<0) 1042 #define USBC_DEVSPD_MASK (3<<0) 1043 #define USBC_DEVSPD_SHIFT (0) 1044 #define USBC_NZSTSOUTHSHK (1<<2) 1045 #define USBC_NZSTSOUTHSHK_MASK (1<<2) 1046 #define USBC_NZSTSOUTHSHK_SHIFT (2) 1047 #define USBC_DEVADDR(n) (((n)&0x7F)<<4) 1048 #define USBC_DEVADDR_MASK (0x7F<<4) 1049 #define USBC_DEVADDR_SHIFT (4) 1050 #define USBC_PERFRINT(n) (((n)&3)<<11) 1051 #define USBC_PERFRINT_MASK (3<<11) 1052 #define USBC_PERFRINT_SHIFT (11) 1053 #define USBC_EPMISCNT(n) (((n)&31)<<18) 1054 #define USBC_EPMISCNT_MASK (31<<18) 1055 #define USBC_EPMISCNT_SHIFT (18) 1056 1057 //DCTL 1058 #define USBC_RMTWKUPSIG (1<<0) 1059 #define USBC_RMTWKUPSIG_MASK (1<<0) 1060 #define USBC_RMTWKUPSIG_SHIFT (0) 1061 #define USBC_SFTDISCON (1<<1) 1062 #define USBC_SFTDISCON_MASK (1<<1) 1063 #define USBC_SFTDISCON_SHIFT (1) 1064 #define USBC_GNPINNAKSTS (1<<2) 1065 #define USBC_GNPINNAKSTS_MASK (1<<2) 1066 #define USBC_GNPINNAKSTS_SHIFT (2) 1067 #define USBC_GOUTNAKSTS (1<<3) 1068 #define USBC_GOUTNAKSTS_MASK (1<<3) 1069 #define USBC_GOUTNAKSTS_SHIFT (3) 1070 #define USBC_TSTCTL(n) (((n)&7)<<4) 1071 #define USBC_TSTCTL_MASK (7<<4) 1072 #define USBC_TSTCTL_SHIFT (4) 1073 #define USBC_SGNPINNAK (1<<7) 1074 #define USBC_SGNPINNAK_MASK (1<<7) 1075 #define USBC_SGNPINNAK_SHIFT (7) 1076 #define USBC_CGNPINNAK (1<<8) 1077 #define USBC_CGNPINNAK_MASK (1<<8) 1078 #define USBC_CGNPINNAK_SHIFT (8) 1079 #define USBC_SGOUTNAK (1<<9) 1080 #define USBC_SGOUTNAK_MASK (1<<9) 1081 #define USBC_SGOUTNAK_SHIFT (9) 1082 #define USBC_CGOUTNAK (1<<10) 1083 #define USBC_CGOUTNAK_MASK (1<<10) 1084 #define USBC_CGOUTNAK_SHIFT (10) 1085 #define USBC_PWRONPRGDONE (1<<11) 1086 #define USBC_PWRONPRGDONE_MASK (1<<11) 1087 #define USBC_PWRONPRGDONE_SHIFT (11) 1088 #define USBC_GMC(n) (((n)&3)<<12) 1089 #define USBC_GMC_MASK (3<<12) 1090 #define USBC_GMC_SHIFT (12) 1091 #define USBC_IGNRFRMNUM (1<<15) 1092 #define USBC_IGNRFRMNUM_MASK (1<<15) 1093 #define USBC_IGNRFRMNUM_SHIFT (15) 1094 1095 //DSTS 1096 #define USBC_SUSPSTS (1<<0) 1097 #define USBC_SUSPSTS_MASK (1<<0) 1098 #define USBC_SUSPSTS_SHIFT (0) 1099 #define USBC_ENUMSPD(n) (((n)&3)<<1) 1100 #define USBC_ENUMSPD_MASK (3<<1) 1101 #define USBC_ENUMSPD_SHIFT (1) 1102 #define USBC_ERRTICERR (1<<3) 1103 #define USBC_ERRTICERR_MASK (1<<3) 1104 #define USBC_ERRTICERR_SHIFT (3) 1105 #define USBC_SOFFN(n) (((n)&0x3FFF)<<8) 1106 #define USBC_SOFFN_MASK (0x3FFF<<8) 1107 #define USBC_SOFFN_SHIFT (8) 1108 1109 //DIEPMSK 1110 #define USBC_XFERCOMPLMSK (1<<0) 1111 #define USBC_XFERCOMPLMSK_MASK (1<<0) 1112 #define USBC_XFERCOMPLMSK_SHIFT (0) 1113 #define USBC_EPDISBLDMSK (1<<1) 1114 #define USBC_EPDISBLDMSK_MASK (1<<1) 1115 #define USBC_EPDISBLDMSK_SHIFT (1) 1116 #define USBC_AHBERRMSK (1<<2) 1117 #define USBC_AHBERRMSK_MASK (1<<2) 1118 #define USBC_AHBERRMSK_SHIFT (2) 1119 #define USBC_TIMEOUTMSK (1<<3) 1120 #define USBC_TIMEOUTMSK_MASK (1<<3) 1121 #define USBC_TIMEOUTMSK_SHIFT (3) 1122 #define USBC_INTKNTXFEMPMSK (1<<4) 1123 #define USBC_INTKNTXFEMPMSK_MASK (1<<4) 1124 #define USBC_INTKNTXFEMPMSK_SHIFT (4) 1125 #define USBC_INTKNEPMISMSK (1<<5) 1126 #define USBC_INTKNEPMISMSK_MASK (1<<5) 1127 #define USBC_INTKNEPMISMSK_SHIFT (5) 1128 #define USBC_INEPNAKEFFMSK (1<<6) 1129 #define USBC_INEPNAKEFFMSK_MASK (1<<6) 1130 #define USBC_INEPNAKEFFMSK_SHIFT (6) 1131 #define USBC_TXFEMPMSK (1<<7) 1132 #define USBC_TXFIFOUNDRNMSK (1<<8) 1133 #define USBC_TXFIFOUNDRNMSK_MASK (1<<8) 1134 #define USBC_TXFIFOUNDRNMSK_SHIFT (8) 1135 #define USBC_BNAINTRMSK (1<<9) 1136 #define USBC_PKTDRPSTSMSK (1<<11) 1137 #define USBC_BBLEERRINTRPTMSK (1<<12) 1138 #define USBC_NAKINTRPTMSK (1<<13) 1139 #define USBC_NYETINTRPTMSK (1<<14) 1140 #define USBC_STUPPKTRCVDMSK (1<<15) 1141 1142 //DOEPMSK 1143 //#define USBC_XFERCOMPLMSK (1<<0) 1144 //#define USBC_XFERCOMPLMSK_MASK (1<<0) 1145 //#define USBC_XFERCOMPLMSK_SHIFT (0) 1146 //#define USBC_EPDISBLDMSK (1<<1) 1147 //#define USBC_EPDISBLDMSK_MASK (1<<1) 1148 //#define USBC_EPDISBLDMSK_SHIFT (1) 1149 //#define USBC_AHBERRMSK (1<<2) 1150 //#define USBC_AHBERRMSK_MASK (1<<2) 1151 //#define USBC_AHBERRMSK_SHIFT (2) 1152 #define USBC_SETUPMSK (1<<3) 1153 #define USBC_SETUPMSK_MASK (1<<3) 1154 #define USBC_SETUPMSK_SHIFT (3) 1155 #define USBC_OUTTKNEPDISMSK (1<<4) 1156 #define USBC_OUTTKNEPDISMSK_MASK (1<<4) 1157 #define USBC_OUTTKNEPDISMSK_SHIFT (4) 1158 #define USBC_BACK2BACKSETUPMSK (1<<6) 1159 #define USBC_BACK2BACKSETUPMSK_MASK (1<<6) 1160 #define USBC_BACK2BACKSETUPMSK_SHIFT (6) 1161 #define USBC_OUTPKTERRMSK (1<<8) 1162 #define USBC_OUTPKTERRMSK_MASK (1<<8) 1163 #define USBC_OUTPKTERRMSK_SHIFT (8) 1164 //#define USBC_BNAINTRMSK (1<<9) 1165 //#define USBC_PKTDRPSTSMSK (1<<11) 1166 //#define USBC_BBLEERRINTRPTMSK (1<<12) 1167 //#define USBC_NAKINTRPTMSK (1<<13) 1168 //#define USBC_NYETINTRPTMSK (1<<14) 1169 //#define USBC_STUPPKTRCVDMSK (1<<15) 1170 1171 //DAINT 1172 #define USBC_INEPINT(n) (((n)&0xFFFF)<<0) 1173 #define USBC_INEPINT_MASK (0xFFFF<<0) 1174 #define USBC_INEPINT_SHIFT (0) 1175 #define USBC_OUTEPINT(n) (((n)&0xFFFF)<<16) 1176 #define USBC_OUTEPINT_MASK (0xFFFF<<16) 1177 #define USBC_OUTEPINT_SHIFT (16) 1178 1179 //DAINTMSK 1180 #define USBC_INEPMSK(n) (((n)&0xFFFF)<<0) 1181 #define USBC_INEPMSK_MASK (0xFFFF<<0) 1182 #define USBC_INEPMSK_SHIFT (0) 1183 #define USBC_OUTEPMSK(n) (((n)&0xFFFF)<<16) 1184 #define USBC_OUTEPMSK_MASK (0xFFFF<<16) 1185 #define USBC_OUTEPMSK_SHIFT (16) 1186 1187 //DVBUSDIS 1188 #define USBC_DVBUSDIS(n) (((n)&0xFFFF)<<0) 1189 #define USBC_DVBUSDIS_MASK (0xFFFF<<0) 1190 #define USBC_DVBUSDIS_SHIFT (0) 1191 1192 //DVBUSPULSE 1193 #define USBC_DVBUSPULSE(n) (((n)&0xFFF)<<0) 1194 #define USBC_DVBUSPULSE_MASK (0xFFF<<0) 1195 #define USBC_DVBUSPULSE_SHIFT (0) 1196 1197 //DTHRCTL 1198 #define USBC_NONISOTHREN (1<<0) 1199 #define USBC_NONISOTHREN_MASK (1<<0) 1200 #define USBC_NONISOTHREN_SHIFT (0) 1201 #define USBC_ISOTHREN (1<<1) 1202 #define USBC_ISOTHREN_MASK (1<<1) 1203 #define USBC_ISOTHREN_SHIFT (1) 1204 #define USBC_TXTHRLEN(n) (((n)&0x1FF)<<2) 1205 #define USBC_TXTHRLEN_MASK (0x1FF<<2) 1206 #define USBC_TXTHRLEN_SHIFT (2) 1207 #define USBC_RXTHREN (1<<16) 1208 #define USBC_RXTHREN_MASK (1<<16) 1209 #define USBC_RXTHREN_SHIFT (16) 1210 #define USBC_RXTHRLEN(n) (((n)&0x1FF)<<17) 1211 #define USBC_RXTHRLEN_MASK (0x1FF<<17) 1212 #define USBC_RXTHRLEN_SHIFT (17) 1213 #define USBC_ARBPRKEN (1<<27) 1214 #define USBC_ARBPRKEN_MASK (1<<27) 1215 #define USBC_ARBPRKEN_SHIFT (27) 1216 1217 //DIEPEMPMSK 1218 #define USBC_INEPTXFEMPMSK(n) (((n)&0xFFFF)<<0) 1219 #define USBC_INEPTXFEMPMSK_MASK (0xFFFF<<0) 1220 #define USBC_INEPTXFEMPMSK_SHIFT (0) 1221 1222 //DIEPCTL0 1223 #define USBC_EP0_MPS(n) (((n)&3)<<0) 1224 #define USBC_EP0_MPS_MASK (3<<0) 1225 #define USBC_EP0_MPS_SHIFT (0) 1226 #define USBC_NEXTEP(n) (((n)&15)<<11) 1227 #define USBC_NEXTEP_MASK (15<<11) 1228 #define USBC_NEXTEP_SHIFT (11) 1229 #define USBC_USBACTEP (1<<15) 1230 #define USBC_USBACTEP_MASK (1<<15) 1231 #define USBC_USBACTEP_SHIFT (15) 1232 #define USBC_NAKSTS (1<<17) 1233 #define USBC_NAKSTS_MASK (1<<17) 1234 #define USBC_NAKSTS_SHIFT (17) 1235 #define USBC_EPTYPE(n) (((n)&3)<<18) 1236 #define USBC_EPTYPE_MASK (3<<18) 1237 #define USBC_EPTYPE_SHIFT (18) 1238 #define USBC_STALL (1<<21) 1239 #define USBC_STALL_MASK (1<<21) 1240 #define USBC_STALL_SHIFT (21) 1241 #define USBC_EPTXFNUM(n) (((n)&15)<<22) 1242 #define USBC_EPTXFNUM_MASK (15<<22) 1243 #define USBC_EPTXFNUM_SHIFT (22) 1244 #define USBC_CNAK (1<<26) 1245 #define USBC_CNAK_MASK (1<<26) 1246 #define USBC_CNAK_SHIFT (26) 1247 #define USBC_SNAK (1<<27) 1248 #define USBC_SNAK_MASK (1<<27) 1249 #define USBC_SNAK_SHIFT (27) 1250 #define USBC_EPDIS (1<<30) 1251 #define USBC_EPDIS_MASK (1<<30) 1252 #define USBC_EPDIS_SHIFT (30) 1253 #define USBC_EPENA (1<<31) 1254 #define USBC_EPENA_MASK (1<<31) 1255 #define USBC_EPENA_SHIFT (31) 1256 1257 //DIEPINT0 1258 #define USBC_XFERCOMPL (1<<0) 1259 #define USBC_XFERCOMPL_MASK (1<<0) 1260 #define USBC_XFERCOMPL_SHIFT (0) 1261 #define USBC_EPDISBLD (1<<1) 1262 #define USBC_EPDISBLD_MASK (1<<1) 1263 #define USBC_EPDISBLD_SHIFT (1) 1264 #define USBC_AHBERR (1<<2) 1265 #define USBC_AHBERR_MASK (1<<2) 1266 #define USBC_AHBERR_SHIFT (2) 1267 #define USBC_TIMEOUT (1<<3) 1268 #define USBC_TIMEOUT_MASK (1<<3) 1269 #define USBC_TIMEOUT_SHIFT (3) 1270 #define USBC_INTKNTXFEMP (1<<4) 1271 #define USBC_INTKNTXFEMP_MASK (1<<4) 1272 #define USBC_INTKNTXFEMP_SHIFT (4) 1273 #define USBC_INTKNEPMIS (1<<5) 1274 #define USBC_INTKNEPMIS_MASK (1<<5) 1275 #define USBC_INTKNEPMIS_SHIFT (5) 1276 #define USBC_INEPNAKEFF (1<<6) 1277 #define USBC_INEPNAKEFF_MASK (1<<6) 1278 #define USBC_INEPNAKEFF_SHIFT (6) 1279 #define USBC_TXFEMP (1<<7) 1280 #define USBC_TXFEMP_MASK (1<<7) 1281 #define USBC_TXFEMP_SHIFT (7) 1282 #define USBC_TXFIFOUNDRN (1<<8) 1283 #define USBC_TXFIFOUNDRN_MASK (1<<8) 1284 #define USBC_TXFIFOUNDRN_SHIFT (8) 1285 #define USBC_BNAINTR (1<<9) 1286 #define USBC_PKTDRPSTS (1<<11) 1287 #define USBC_BBLEERRINTRPT (1<<12) 1288 #define USBC_NAKINTRPT (1<<13) 1289 #define USBC_NYETINTRPT (1<<14) 1290 #define USBC_STUPPKTRCVD (1<<15) 1291 1292 //DIEPTSIZ0 1293 #define USBC_IEPXFERSIZE0(n) (((n)&0x7F)<<0) 1294 #define USBC_IEPXFERSIZE0_MASK (0x7F<<0) 1295 #define USBC_IEPXFERSIZE0_SHIFT (0) 1296 #define USBC_IEPPKTCNT0(n) (((n)&3)<<19) 1297 #define USBC_IEPPKTCNT0_MASK (3<<19) 1298 #define USBC_IEPPKTCNT0_SHIFT (19) 1299 1300 //DIEPDMA0 1301 #define USBC_DMAADDR(n) (((n)&0xFFFFFFFF)<<0) 1302 #define USBC_DMAADDR_MASK (0xFFFFFFFF<<0) 1303 #define USBC_DMAADDR_SHIFT (0) 1304 1305 //DIEPFSTS0 1306 #define USBC_INEPTXFSPCAVAIL(n) (((n)&0xFFFF)<<0) 1307 #define USBC_INEPTXFSPCAVAIL_MASK (0xFFFF<<0) 1308 #define USBC_INEPTXFSPCAVAIL_SHIFT (0) 1309 1310 //DIEPCTL 1311 #define USBC_EPN_MPS(n) (((n)&0x7FF)<<0) 1312 #define USBC_EPN_MPS_MASK (0x7FF<<0) 1313 #define USBC_EPN_MPS_SHIFT (0) 1314 //#define USBC_NEXTEP(n) (((n)&15)<<11) 1315 //#define USBC_NEXTEP_MASK (15<<11) 1316 //#define USBC_NEXTEP_SHIFT (11) 1317 //#define USBC_USBACTEP (1<<15) 1318 //#define USBC_USBACTEP_MASK (1<<15) 1319 //#define USBC_USBACTEP_SHIFT (15) 1320 #define USBC_EPDPID (1<<16) 1321 #define USBC_EPDPID_MASK (1<<16) 1322 #define USBC_EPDPID_SHIFT (16) 1323 //#define USBC_NAKSTS (1<<17) 1324 //#define USBC_NAKSTS_MASK (1<<17) 1325 //#define USBC_NAKSTS_SHIFT (17) 1326 //#define USBC_EPTYPE(n) (((n)&3)<<18) 1327 //#define USBC_EPTYPE_MASK (3<<18) 1328 //#define USBC_EPTYPE_SHIFT (18) 1329 #define USBC_SNP (1<<20) 1330 #define USBC_SNP_MASK (1<<20) 1331 #define USBC_SNP_SHIFT (20) 1332 //#define USBC_STALL (1<<21) 1333 //#define USBC_STALL_MASK (1<<21) 1334 //#define USBC_STALL_SHIFT (21) 1335 //#define USBC_EPTXFNUM(n) (((n)&15)<<22) 1336 //#define USBC_EPTXFNUM_MASK (15<<22) 1337 //#define USBC_EPTXFNUM_SHIFT (22) 1338 //#define USBC_CNAK (1<<26) 1339 //#define USBC_CNAK_MASK (1<<26) 1340 //#define USBC_CNAK_SHIFT (26) 1341 //#define USBC_SNAK (1<<27) 1342 //#define USBC_SNAK_MASK (1<<27) 1343 //#define USBC_SNAK_SHIFT (27) 1344 #define USBC_SETD0PID (1<<28) 1345 #define USBC_SETD0PID_MASK (1<<28) 1346 #define USBC_SETD0PID_SHIFT (28) 1347 #define USBC_SETD1PID (1<<29) 1348 #define USBC_SETD1PID_MASK (1<<29) 1349 #define USBC_SETD1PID_SHIFT (29) 1350 //#define USBC_EPDIS (1<<30) 1351 //#define USBC_EPDIS_MASK (1<<30) 1352 //#define USBC_EPDIS_SHIFT (30) 1353 //#define USBC_EPENA (1<<31) 1354 //#define USBC_EPENA_MASK (1<<31) 1355 //#define USBC_EPENA_SHIFT (31) 1356 1357 //DIEPINT 1358 //#define USBC_XFERCOMPL (1<<0) 1359 //#define USBC_XFERCOMPL_MASK (1<<0) 1360 //#define USBC_XFERCOMPL_SHIFT (0) 1361 //#define USBC_EPDISBLD (1<<1) 1362 //#define USBC_EPDISBLD_MASK (1<<1) 1363 //#define USBC_EPDISBLD_SHIFT (1) 1364 //#define USBC_AHBERR (1<<2) 1365 //#define USBC_AHBERR_MASK (1<<2) 1366 //#define USBC_AHBERR_SHIFT (2) 1367 //#define USBC_TIMEOUT (1<<3) 1368 //#define USBC_TIMEOUT_MASK (1<<3) 1369 //#define USBC_TIMEOUT_SHIFT (3) 1370 //#define USBC_INTKNTXFEMP (1<<4) 1371 //#define USBC_INTKNTXFEMP_MASK (1<<4) 1372 //#define USBC_INTKNTXFEMP_SHIFT (4) 1373 //#define USBC_INTKNEPMIS (1<<5) 1374 //#define USBC_INTKNEPMIS_MASK (1<<5) 1375 //#define USBC_INTKNEPMIS_SHIFT (5) 1376 //#define USBC_INEPNAKEFF (1<<6) 1377 //#define USBC_INEPNAKEFF_MASK (1<<6) 1378 //#define USBC_INEPNAKEFF_SHIFT (6) 1379 //#define USBC_TXFEMP (1<<7) 1380 //#define USBC_TXFEMP_MASK (1<<7) 1381 //#define USBC_TXFEMP_SHIFT (7) 1382 //#define USBC_TXFIFOUNDRN (1<<8) 1383 //#define USBC_TXFIFOUNDRN_MASK (1<<8) 1384 //#define USBC_TXFIFOUNDRN_SHIFT (8) 1385 1386 //DIEPTSIZ 1387 #define USBC_IEPXFERSIZE(n) (((n)&0x7FFFF)<<0) 1388 #define USBC_IEPXFERSIZE_MASK (0x7FFFF<<0) 1389 #define USBC_IEPXFERSIZE_SHIFT (0) 1390 #define USBC_IEPPKTCNT(n) (((n)&0x3FF)<<19) 1391 #define USBC_IEPPKTCNT_MASK (0x3FF<<19) 1392 #define USBC_IEPPKTCNT_SHIFT (19) 1393 #define USBC_MC(n) (((n)&3)<<29) 1394 #define USBC_MC_MASK (3<<29) 1395 #define USBC_MC_SHIFT (29) 1396 1397 //DIEPDMA 1398 //#define USBC_DMAADDR(n) (((n)&0xFFFFFFFF)<<0) 1399 //#define USBC_DMAADDR_MASK (0xFFFFFFFF<<0) 1400 //#define USBC_DMAADDR_SHIFT (0) 1401 1402 //DIEPFSTS 1403 //#define USBC_INEPTXFSPCAVAIL(n) (((n)&0xFFFF)<<0) 1404 //#define USBC_INEPTXFSPCAVAIL_MASK (0xFFFF<<0) 1405 //#define USBC_INEPTXFSPCAVAIL_SHIFT (0) 1406 1407 //DOEPCTL0 1408 //#define USBC_EP0_MPS(n) (((n)&3)<<0) 1409 //#define USBC_EP0_MPS_MASK (3<<0) 1410 //#define USBC_EP0_MPS_SHIFT (0) 1411 //#define USBC_USBACTEP (1<<15) 1412 //#define USBC_USBACTEP_MASK (1<<15) 1413 //#define USBC_USBACTEP_SHIFT (15) 1414 //#define USBC_NAKSTS (1<<17) 1415 //#define USBC_NAKSTS_MASK (1<<17) 1416 //#define USBC_NAKSTS_SHIFT (17) 1417 //#define USBC_EPTYPE(n) (((n)&3)<<18) 1418 //#define USBC_EPTYPE_MASK (3<<18) 1419 //#define USBC_EPTYPE_SHIFT (18) 1420 //#define USBC_SNP (1<<20) 1421 //#define USBC_SNP_MASK (1<<20) 1422 //#define USBC_SNP_SHIFT (20) 1423 //#define USBC_STALL (1<<21) 1424 //#define USBC_STALL_MASK (1<<21) 1425 //#define USBC_STALL_SHIFT (21) 1426 //#define USBC_CNAK (1<<26) 1427 //#define USBC_CNAK_MASK (1<<26) 1428 //#define USBC_CNAK_SHIFT (26) 1429 //#define USBC_SNAK (1<<27) 1430 //#define USBC_SNAK_MASK (1<<27) 1431 //#define USBC_SNAK_SHIFT (27) 1432 //#define USBC_EPDIS (1<<30) 1433 //#define USBC_EPDIS_MASK (1<<30) 1434 //#define USBC_EPDIS_SHIFT (30) 1435 //#define USBC_EPENA (1<<31) 1436 //#define USBC_EPENA_MASK (1<<31) 1437 //#define USBC_EPENA_SHIFT (31) 1438 1439 //DOEPINT0 1440 //#define USBC_XFERCOMPL (1<<0) 1441 //#define USBC_XFERCOMPL_MASK (1<<0) 1442 //#define USBC_XFERCOMPL_SHIFT (0) 1443 //#define USBC_EPDISBLD (1<<1) 1444 //#define USBC_EPDISBLD_MASK (1<<1) 1445 //#define USBC_EPDISBLD_SHIFT (1) 1446 //#define USBC_AHBERR (1<<2) 1447 //#define USBC_AHBERR_MASK (1<<2) 1448 //#define USBC_AHBERR_SHIFT (2) 1449 #define USBC_SETUP (1<<3) 1450 #define USBC_SETUP_MASK (1<<3) 1451 #define USBC_SETUP_SHIFT (3) 1452 #define USBC_OUTTKNEPDIS (1<<4) 1453 #define USBC_OUTTKNEPDIS_MASK (1<<4) 1454 #define USBC_OUTTKNTPDIS_SHIFT (4) 1455 #define USBC_STSPHSERCVD (1<<5) 1456 #define USBC_STSPHSERCVD_MASK (1<<5) 1457 #define USBC_STSPHSERCVD_SHIFT (5) 1458 #define USBC_BACK2BACKSETUP (1<<6) 1459 #define USBC_BACK2BACKSETUP_MASK (1<<6) 1460 #define USBC_BACK2BACKSETUP_SHIFT (6) 1461 //#define USBC_TXFEMP (1<<7) 1462 //#define USBC_TXFEMP_MASK (1<<7) 1463 //#define USBC_TXFEMP_SHIFT (7) 1464 #define USBC_OUTPKTERR (1<<8) 1465 #define USBC_OUTPKTERR_MASK (1<<8) 1466 #define USBC_OUTPKTERR_SHIFT (8) 1467 //#define USBC_BNAINTR (1<<9) 1468 //#define USBC_PKTDRPSTS (1<<11) 1469 //#define USBC_BBLEERRINTRPT (1<<12) 1470 //#define USBC_NAKINTRPT (1<<13) 1471 //#define USBC_NYETINTRPT (1<<14) 1472 //#define USBC_STUPPKTRCVD (1<<15) 1473 1474 //DOEPTSIZ0 1475 #define USBC_OEPXFERSIZE0(n) (((n)&0x7F)<<0) 1476 #define USBC_OEPXFERSIZE0_MASK (0x7F<<0) 1477 #define USBC_OEPXFERSIZE0_SHIFT (0) 1478 #define USBC_OEPPKTCNT0 (1<<19) 1479 #define USBC_OEPPKTCNT0_MASK (1<<19) 1480 #define USBC_OEPPKTCNT0_SHIFT (19) 1481 #define USBC_SUPCNT(n) (((n)&3)<<29) 1482 #define USBC_SUPCNT_MASK (3<<29) 1483 #define USBC_SUPCNT_SHIFT (29) 1484 1485 //DOEPDMA0 1486 //#define USBC_DMAADDR(n) (((n)&0xFFFFFFFF)<<0) 1487 //#define USBC_DMAADDR_MASK (0xFFFFFFFF<<0) 1488 //#define USBC_DMAADDR_SHIFT (0) 1489 1490 //DOEPCTL 1491 //#define USBC_EPN_MPS(n) (((n)&0x7FF)<<0) 1492 //#define USBC_EPN_MPS_MASK (0x7FF<<0) 1493 //#define USBC_EPN_MPS_SHIFT (0) 1494 //#define USBC_NEXTEP(n) (((n)&15)<<11) 1495 //#define USBC_NEXTEP_MASK (15<<11) 1496 //#define USBC_NEXTEP_SHIFT (11) 1497 //#define USBC_USBACTEP (1<<15) 1498 //#define USBC_USBACTEP_MASK (1<<15) 1499 //#define USBC_USBACTEP_SHIFT (15) 1500 //#define USBC_EPDPID (1<<16) 1501 //#define USBC_EPDPID_MASK (1<<16) 1502 //#define USBC_EPDPID_SHIFT (16) 1503 //#define USBC_NAKSTS (1<<17) 1504 //#define USBC_NAKSTS_MASK (1<<17) 1505 //#define USBC_NAKSTS_SHIFT (17) 1506 //#define USBC_EPTYPE(n) (((n)&3)<<18) 1507 //#define USBC_EPTYPE_MASK (3<<18) 1508 //#define USBC_EPTYPE_SHIFT (18) 1509 //#define USBC_SNP (1<<20) 1510 //#define USBC_SNP_MASK (1<<20) 1511 //#define USBC_SNP_SHIFT (20) 1512 //#define USBC_STALL (1<<21) 1513 //#define USBC_STALL_MASK (1<<21) 1514 //#define USBC_STALL_SHIFT (21) 1515 //#define USBC_EPTXFNUM(n) (((n)&15)<<22) 1516 //#define USBC_EPTXFNUM_MASK (15<<22) 1517 //#define USBC_EPTXFNUM_SHIFT (22) 1518 //#define USBC_CNAK (1<<26) 1519 //#define USBC_CNAK_MASK (1<<26) 1520 //#define USBC_CNAK_SHIFT (26) 1521 //#define USBC_SNAK (1<<27) 1522 //#define USBC_SNAK_MASK (1<<27) 1523 //#define USBC_SNAK_SHIFT (27) 1524 //#define USBC_SETD0PID (1<<28) 1525 //#define USBC_SETD0PID_MASK (1<<28) 1526 //#define USBC_SETD0PID_SHIFT (28) 1527 //#define USBC_SETD1PID (1<<29) 1528 //#define USBC_SETD1PID_MASK (1<<29) 1529 //#define USBC_SETD1PID_SHIFT (29) 1530 //#define USBC_EPDIS (1<<30) 1531 //#define USBC_EPDIS_MASK (1<<30) 1532 //#define USBC_EPDIS_SHIFT (30) 1533 //#define USBC_EPENA (1<<31) 1534 //#define USBC_EPENA_MASK (1<<31) 1535 //#define USBC_EPENA_SHIFT (31) 1536 1537 //DOEPINT 1538 //#define USBC_XFERCOMPL (1<<0) 1539 //#define USBC_XFERCOMPL_MASK (1<<0) 1540 //#define USBC_XFERCOMPL_SHIFT (0) 1541 //#define USBC_EPDISBLD (1<<1) 1542 //#define USBC_EPDISBLD_MASK (1<<1) 1543 //#define USBC_EPDISBLD_SHIFT (1) 1544 //#define USBC_AHBERR (1<<2) 1545 //#define USBC_AHBERR_MASK (1<<2) 1546 //#define USBC_AHBERR_SHIFT (2) 1547 //#define USBC_SETUP (1<<3) 1548 //#define USBC_SETUP_MASK (1<<3) 1549 //#define USBC_SETUP_SHIFT (3) 1550 //#define USBC_OUTTKNEPDIS (1<<4) 1551 //#define USBC_OUTTKNEPDIS_MASK (1<<4) 1552 //#define USBC_OUTTKNTPDIS_SHIFT (4) 1553 //#define USBC_STSPHSERCVD (1<<5) 1554 //#define USBC_STSPHSERCVD_MASK (1<<5) 1555 //#define USBC_STSPHSERCVD_SHIFT (5) 1556 //#define USBC_BACK2BACKSETUP (1<<6) 1557 //#define USBC_BACK2BACKSETUP_MASK (1<<6) 1558 //#define USBC_BACK2BACKSETUP_SHIFT (6) 1559 //#define USBC_TXFEMP (1<<7) 1560 //#define USBC_TXFEMP_MASK (1<<7) 1561 //#define USBC_TXFEMP_SHIFT (7) 1562 //#define USBC_OUTPKTERR (1<<8) 1563 //#define USBC_OUTPKTERR_MASK (1<<8) 1564 //#define USBC_OUTPKTERR_SHIFT (8) 1565 //#define USBC_BNAINTR (1<<9) 1566 //#define USBC_PKTDRPSTS (1<<11) 1567 //#define USBC_BBLEERRINTRPT (1<<12) 1568 //#define USBC_NAKINTRPT (1<<13) 1569 //#define USBC_NYETINTRPT (1<<14) 1570 //#define USBC_STUPPKTRCVD (1<<15) 1571 1572 //DOEPTSIZ 1573 #define USBC_OEPXFERSIZE(n) (((n)&0x7FFFF)<<0) 1574 #define USBC_OEPXFERSIZE_MASK (0x7FFFF<<0) 1575 #define USBC_OEPXFERSIZE_SHIFT (0) 1576 #define USBC_OEPPKTCNT(n) (((n)&0x3FF)<<19) 1577 #define USBC_OEPPKTCNT_MASK (0x3FF<<19) 1578 #define USBC_OEPPKTCNT_SHIFT (19) 1579 //#define USBC_MC(n) (((n)&3)<<29) 1580 //#define USBC_MC_MASK (3<<29) 1581 //#define USBC_MC_SHIFT (29) 1582 #define USBC_RXDPID(n) (((n)&3)<<29) 1583 #define USBC_RXDPID_MASK (3<<29) 1584 #define USBC_RXDPID_SHIFT (29) 1585 1586 //DOEPDMA 1587 //#define USBC_DMAADDR(n) (((n)&0xFFFFFFFF)<<0) 1588 //#define USBC_DMAADDR_MASK (0xFFFFFFFF<<0) 1589 //#define USBC_DMAADDR_SHIFT (0) 1590 1591 //PCGCCTL 1592 #define USBC_STOPPCLK (1<<0) 1593 #define USBC_STOPPCLK_MASK (1<<0) 1594 #define USBC_STOPPCLK_SHIFT (0) 1595 #define USBC_GATEHCLK (1<<1) 1596 #define USBC_GATEHCLK_MASK (1<<1) 1597 #define USBC_GATEHCLK_SHIFT (1) 1598 #define USBC_PWRCLMP (1<<2) 1599 #define USBC_PWRCLMP_MASK (1<<2) 1600 #define USBC_PWRCLMP_SHIFT (2) 1601 #define USBC_RSTPDWNMODULE (1<<3) 1602 #define USBC_RSTPDWNMODULE_MASK (1<<3) 1603 #define USBC_RSTPDWNMODULE_SHIFT (3) 1604 #define USBC_ENBL_L1GATING (1<<5) 1605 #define USBC_ENBL_L1GATING_MASK (1<<5) 1606 #define USBC_ENBL_L1GATING_SHIFT (5) 1607 #define USBC_PHYSLEEP (1<<6) 1608 #define USBC_PHYSLEEP_MASK (1<<6) 1609 #define USBC_PHYSLEEP_SHIFT (6) 1610 #define USBC_SUSPENDED (1<<7) 1611 #define USBC_SUSPENDED_MASK (1<<7) 1612 #define USBC_SUSPENDED_SHIFT (7) 1613 1614 //TxRxData 1615 #define USBC_TXDATA(n) (((n)&0xFFFFFFFF)<<0) 1616 #define USBC_TXDATA_MASK (0xFFFFFFFF<<0) 1617 #define USBC_TXDATA_SHIFT (0) 1618 #define USBC_RXDATA(n) (((n)&0xFFFFFFFF)<<0) 1619 #define USBC_RXDATA_MASK (0xFFFFFFFF<<0) 1620 #define USBC_RXDATA_SHIFT (0) 1621 1622 //RAMData 1623 #define USBC_DATA(n) (((n)&0xFFFFFFFF)<<0) 1624 #define USBC_DATA_MASK (0xFFFFFFFF<<0) 1625 #define USBC_DATA_SHIFT (0) 1626 1627 1628 // ============================================================================ 1629 // USBIF_T 1630 // ----------------------------------------------------------------------------- 1631 /// 1632 // ============================================================================= 1633 struct USBIF_T { 1634 __IO uint32_t USBIF_00; 1635 __IO uint32_t USBIF_04; 1636 __IO uint32_t USBIF_08; 1637 __IO uint32_t USBIF_0C; 1638 __IO uint32_t USBIF_10; 1639 __IO uint32_t USBIF_14; 1640 __IO uint32_t USBIF_18; 1641 __IO uint32_t USBIF_1C; 1642 __IO uint32_t USBIF_20; 1643 }; 1644 1645 // USBIF_00 1646 #define USBIF_00_CFG_TP_SEL_SHIFT 0 1647 #define USBIF_00_CFG_TP_SEL_MASK (0xFF << USBIF_00_CFG_TP_SEL_SHIFT) 1648 #define USBIF_00_CFG_TP_SEL(n) BITFIELD_VAL(USBIF_00_CFG_TP_SEL, n) 1649 #define USBIF_00_CFG_EXT_PHY (1 << 8) 1650 #define USBIF_00_CFG_EXT_ADP (1 << 9) 1651 #define USBIF_00_CFG_EXT_OTG (1 << 10) 1652 #define USBIF_00_CFG_EXT_RID (1 << 11) 1653 #define USBIF_00_CFG_DR_PLL (1 << 16) 1654 #define USBIF_00_CFG_DR_SUSPEND (1 << 17) 1655 #define USBIF_00_CFG_REG_PLL (1 << 24) 1656 #define USBIF_00_CFG_REG_SUSPEND (1 << 25) 1657 1658 // USBIF_04 1659 #define USBIF_04_CFG_MODE_PLLEN_SHIFT 4 1660 #define USBIF_04_CFG_MODE_PLLEN_MASK (0x3 << USBIF_04_CFG_MODE_PLLEN_SHIFT) 1661 #define USBIF_04_CFG_MODE_PLLEN(n) BITFIELD_VAL(USBIF_04_CFG_MODE_PLLEN, n) 1662 #define USBIF_04_CFG_SUSPEND_MODE_SHIFT 6 1663 #define USBIF_04_CFG_SUSPEND_MODE_MASK (0x3 << USBIF_04_CFG_SUSPEND_MODE_SHIFT) 1664 #define USBIF_04_CFG_SUSPEND_MODE(n) BITFIELD_VAL(USBIF_04_CFG_SUSPEND_MODE, n) 1665 #define USBIF_04_CFG_SLEEP_THSD_SHIFT 8 1666 #define USBIF_04_CFG_SLEEP_THSD_MASK (0xF << USBIF_04_CFG_SLEEP_THSD_SHIFT) 1667 #define USBIF_04_CFG_SLEEP_THSD(n) BITFIELD_VAL(USBIF_04_CFG_SLEEP_THSD, n) 1668 1669 // USBIF_08 1670 #define USBIF_08_CFG_EXTPHY_RXTIMING (1 << 0) 1671 #define USBIF_08_CFG_EXTPHY_TXTIMING (1 << 1) 1672 #define USBIF_08_CFG_PHY_TXTIMING (1 << 2) 1673 #define USBIF_08_CFG_PHY_RXTIMING (1 << 3) 1674 #define USBIF_08_CFG_PHY_RXLSTIMING (1 << 4) 1675 #define USBIF_08_CFG_EN_HOSTDISC (1 << 5) 1676 #define USBIF_08_CFG_MODE_FSRCV (1 << 6) 1677 #define USBIF_08_CFG_PHY_TXOPMODE (1 << 7) 1678 #define USBIF_08_CFG_PHY_TXXCVSEL (1 << 8) 1679 #define USBIF_08_CFG_PHY_TXTERMSEL (1 << 9) 1680 #define USBIF_08_CFG_SEL_HSIC (1 << 10) 1681 #define USBIF_08_CFG_SEL48M (1 << 11) 1682 #define USBIF_08_CFG_POL_SPI_CLK (1 << 12) 1683 #define USBIF_08_CFG_MACPLL_RDY (1 << 13) 1684 #define USBIF_08_CFG_PHY_HOST_MODE (1 << 14) 1685 #define USBIF_08_CFG_SOFT_RESETN_PHY (1 << 15) 1686 1687 // USBIF_0C 1688 #define USBIF_0C_PLL_EN_MSK (1 << 0) 1689 #define USBIF_0C_D1_DEV_HIRD_VALID_MSK (1 << 1) 1690 #define USBIF_0C_SOF_TOGGLE_OUT_MSK (1 << 2) 1691 #define USBIF_0C_SOF_SEND_MSK (1 << 3) 1692 #define USBIF_0C_CHEP_LAST_TRANS_MSK (1 << 4) 1693 #define USBIF_0C_ID_DIG_MSK (1 << 5) 1694 #define USBIF_0C_ENABLE_ALL_MSK (1 << 6) 1695 1696 // USBIF_10 1697 #define USBIF_10_PLL_EN_RIS (1 << 0) 1698 #define USBIF_10_D1_DEV_HIRD_VALID_RIS (1 << 1) 1699 #define USBIF_10_SOF_TOGGLE_OUT_RIS (1 << 2) 1700 #define USBIF_10_SOF_SEND_RIS (1 << 3) 1701 #define USBIF_10_CHEP_LAST_TRANS_RIS (1 << 4) 1702 #define USBIF_10_ID_DIG_RIS (1 << 5) 1703 1704 // USBIF_14 1705 #define USBIF_14_PLL_EN_MIS (1 << 0) 1706 #define USBIF_14_D1_DEV_HIRD_VALID_MIS (1 << 1) 1707 #define USBIF_14_SOF_TOGGLE_OUT_MIS (1 << 2) 1708 #define USBIF_14_SOF_SEND_MIS (1 << 3) 1709 #define USBIF_14_CHEP_LAST_TRANS_MIS (1 << 4) 1710 #define USBIF_14_ID_DIG_MIS (1 << 5) 1711 1712 // USBIF_18 1713 #define USBIF_18_LAST_DEV_HIRD_RCVD_SHIFT 0 1714 #define USBIF_18_LAST_DEV_HIRD_RCVD_MASK (0xF << USBIF_18_LAST_DEV_HIRD_RCVD_SHIFT) 1715 #define USBIF_18_LAST_DEV_HIRD_RCVD(n) BITFIELD_VAL(USBIF_18_LAST_DEV_HIRD_RCVD, n) 1716 #define USBIF_18_LAST_CHEP_NUMBER_SHIFT 4 1717 #define USBIF_18_LAST_CHEP_NUMBER_MASK (0xF << USBIF_18_LAST_CHEP_NUMBER_SHIFT) 1718 #define USBIF_18_LAST_CHEP_NUMBER(n) BITFIELD_VAL(USBIF_18_LAST_CHEP_NUMBER, n) 1719 #define USBIF_18_DEV_HIRD_RCVD_SHIFT 8 1720 #define USBIF_18_DEV_HIRD_RCVD_MASK (0xF << USBIF_18_DEV_HIRD_RCVD_SHIFT) 1721 #define USBIF_18_DEV_HIRD_RCVD(n) BITFIELD_VAL(USBIF_18_DEV_HIRD_RCVD, n) 1722 #define USBIF_18_CHEP_NUMBER_SHIFT 12 1723 #define USBIF_18_CHEP_NUMBER_MASK (0xF << USBIF_18_CHEP_NUMBER_SHIFT) 1724 #define USBIF_18_CHEP_NUMBER(n) BITFIELD_VAL(USBIF_18_CHEP_NUMBER, n) 1725 #define USBIF_18_CHEP_LAST_TRANS (1 << 16) 1726 #define USBIF_18_SOF_SENT_RCVD_TGL (1 << 17) 1727 #define USBIF_18_SOF_TOGGLE_OUT (1 << 18) 1728 #define USBIF_18_DEV_HIRD_VLD_TGL (1 << 19) 1729 #define USBIF_18_ID_DIG (1 << 20) 1730 1731 #endif 1732 1733