diff --git a/data/registers/otghs_v1.yaml b/data/registers/otg_v1.yaml similarity index 97% rename from data/registers/otghs_v1.yaml rename to data/registers/otg_v1.yaml index 9376228..9d81763 100644 --- a/data/registers/otghs_v1.yaml +++ b/data/registers/otg_v1.yaml @@ -1,6 +1,6 @@ --- -block/OTG_HS: - description: USB on the go high speed +block/OTG: + description: USB on the go items: - name: GOTGCTL description: Control and status register @@ -61,10 +61,14 @@ block/OTG_HS: description: OTG I2C access register byte_offset: 48 fieldset: GI2CCTL - - name: GCCFG - description: General core configuration register + - name: GCCFG_V1 + description: General core configuration register, for core_id 0x0000_1xxx byte_offset: 56 - fieldset: GCCFG + fieldset: GCCFG_V1 + - name: GCCFG_V2 + description: General core configuration register, for core_id 0x0000_[23]xxx + byte_offset: 56 + fieldset: GCCFG_V2 - name: CID description: Core ID register byte_offset: 60 @@ -664,7 +668,30 @@ fieldset/GAHBCFG: description: Periodic TxFIFO empty level bit_offset: 8 bit_size: 1 -fieldset/GCCFG: +fieldset/GCCFG_V1: + description: General core configuration register + fields: + - name: PWRDWN + description: Power down + bit_offset: 16 + bit_size: 1 + - name: VBUSASEN + description: Enable the VBUS "A" sensing device + bit_offset: 18 + bit_size: 1 + - name: VBUSBSEN + description: Enable the VBUS "B" sensing device + bit_offset: 19 + bit_size: 1 + - name: SOFOUTEN + description: SOF output enable + bit_offset: 20 + bit_size: 1 + - name: NOVBUSSENS + description: VBUS sensing disable + bit_offset: 21 + bit_size: 1 +fieldset/GCCFG_V2: description: General core configuration register fields: - name: DCDET @@ -703,10 +730,6 @@ fieldset/GCCFG: description: Secondary detection (SD) mode enable bit_offset: 20 bit_size: 1 - - name: NOVBUSSENS - description: VBUS sensing disable - bit_offset: 21 - bit_size: 1 - name: VBDEN description: USB VBUS detection enable bit_offset: 21 @@ -809,6 +832,10 @@ fieldset/GINTMSK: description: End of periodic frame interrupt mask bit_offset: 15 bit_size: 1 + - name: EPMISM + description: Endpoint mismatch interrupt mask + bit_offset: 17 + bit_size: 1 - name: IEPINT description: IN endpoints interrupt mask bit_offset: 18 @@ -1295,6 +1322,10 @@ fieldset/GUSBCFG: description: Force device mode bit_offset: 30 bit_size: 1 + - name: CTXPKT + description: Corrupt Tx packet + bit_offset: 31 + bit_size: 1 fieldset/HAINT: description: Host all channels interrupt register fields: diff --git a/data/registers/otgfs_v1.yaml b/data/registers/otgfs_v1.yaml deleted file mode 100644 index a90bba4..0000000 --- a/data/registers/otgfs_v1.yaml +++ /dev/null @@ -1,1470 +0,0 @@ ---- -block/OTG_FS: - description: USB on the go full speed - items: - - name: GOTGCTL - description: Control and status register - byte_offset: 0 - fieldset: GOTGCTL - - name: GOTGINT - description: Interrupt register - byte_offset: 4 - fieldset: GOTGINT - - name: GAHBCFG - description: AHB configuration register - byte_offset: 8 - fieldset: GAHBCFG - - name: GUSBCFG - description: USB configuration register - byte_offset: 12 - fieldset: GUSBCFG - - name: GRSTCTL - description: Reset register - byte_offset: 16 - fieldset: GRSTCTL - - name: GINTSTS - description: Core interrupt register - byte_offset: 20 - fieldset: GINTSTS - - name: GINTMSK - description: Interrupt mask register - byte_offset: 24 - fieldset: GINTMSK - - name: GRXSTSR - description: Receive status debug read register - byte_offset: 28 - access: Read - fieldset: GRXSTS - - name: GRXSTSP - description: Status read and pop register - byte_offset: 32 - access: Read - fieldset: GRXSTS - - name: GRXFSIZ - description: Receive FIFO size register - byte_offset: 36 - fieldset: GRXFSIZ - - name: DIEPTXF0 - description: Endpoint 0 transmit FIFO size register (device mode) - byte_offset: 40 - fieldset: FSIZ - - name: HNPTXFSIZ - description: Non-periodic transmit FIFO size register (host mode) - byte_offset: 40 - fieldset: FSIZ - - name: HNPTXSTS - description: Non-periodic transmit FIFO/queue status register (host mode) - byte_offset: 44 - access: Read - fieldset: HNPTXSTS - - name: GCCFG - description: General core configuration register - byte_offset: 56 - fieldset: GCCFG - - name: CID - description: Core ID register - byte_offset: 60 - fieldset: CID - - name: HPTXFSIZ - description: Host periodic transmit FIFO size register - byte_offset: 256 - fieldset: FSIZ - - name: DIEPTXF - description: Device IN endpoint transmit FIFO size register - array: - len: 7 - stride: 4 - byte_offset: 260 - fieldset: FSIZ - - name: HCFG - description: Host configuration register - byte_offset: 1024 - fieldset: HCFG - - name: HFIR - description: Host frame interval register - byte_offset: 1028 - fieldset: HFIR - - name: HFNUM - description: Host frame number/frame time remaining register - byte_offset: 1032 - access: Read - fieldset: HFNUM - - name: HPTXSTS - description: Periodic transmit FIFO/queue status register - byte_offset: 1040 - fieldset: HPTXSTS - - name: HAINT - description: Host all channels interrupt register - byte_offset: 1044 - access: Read - fieldset: HAINT - - name: HAINTMSK - description: Host all channels interrupt mask register - byte_offset: 1048 - fieldset: HAINTMSK - - name: HPRT - description: Host port control and status register - byte_offset: 1088 - fieldset: HPRT - - name: HCCHAR - description: Host channel characteristics register - array: - len: 8 - stride: 32 - byte_offset: 1280 - fieldset: HCCHAR - - name: HCINT - description: Host channel interrupt register - array: - len: 8 - stride: 32 - byte_offset: 1288 - fieldset: HCINT - - name: HCINTMSK - description: Host channel mask register - array: - len: 8 - stride: 32 - byte_offset: 1292 - fieldset: HCINTMSK - - name: HCTSIZ - description: Host channel transfer size register - array: - len: 8 - stride: 32 - byte_offset: 1296 - fieldset: HCTSIZ - - name: DCFG - description: Device configuration register - byte_offset: 2048 - fieldset: DCFG - - name: DCTL - description: Device control register - byte_offset: 2052 - fieldset: DCTL - - name: DSTS - description: Device status register - byte_offset: 2056 - access: Read - fieldset: DSTS - - name: DIEPMSK - description: Device IN endpoint common interrupt mask register - byte_offset: 2064 - fieldset: DIEPMSK - - name: DOEPMSK - description: Device OUT endpoint common interrupt mask register - byte_offset: 2068 - fieldset: DOEPMSK - - name: DAINT - description: Device all endpoints interrupt register - byte_offset: 2072 - access: Read - fieldset: DAINT - - name: DAINTMSK - description: All endpoints interrupt mask register - byte_offset: 2076 - fieldset: DAINTMSK - - name: DVBUSDIS - description: Device VBUS discharge time register - byte_offset: 2088 - fieldset: DVBUSDIS - - name: DVBUSPULSE - description: Device VBUS pulsing time register - byte_offset: 2092 - fieldset: DVBUSPULSE - - name: DIEPEMPMSK - description: Device IN endpoint FIFO empty interrupt mask register - byte_offset: 2100 - fieldset: DIEPEMPMSK - - name: DIEPCTL - description: Device IN endpoint control register - array: - len: 8 - stride: 32 - byte_offset: 2304 - fieldset: DIEPCTL - - name: DIEPINT - description: Device IN endpoint interrupt register - array: - len: 8 - stride: 32 - byte_offset: 2312 - fieldset: DIEPINT - - name: DIEPTSIZ - description: Device IN endpoint transfer size register - array: - len: 8 - stride: 32 - byte_offset: 2320 - fieldset: DIEPTSIZ - - name: DTXFSTS - description: Device IN endpoint transmit FIFO status register - array: - len: 8 - stride: 32 - byte_offset: 2328 - access: Read - fieldset: DTXFSTS - - name: DOEPCTL - description: Device OUT endpoint control register - array: - len: 8 - stride: 32 - byte_offset: 2816 - fieldset: DOEPCTL - - name: DOEPINT - description: Device OUT endpoint interrupt register - array: - len: 8 - stride: 32 - byte_offset: 2824 - fieldset: DOEPINT - - name: DOEPTSIZ - description: Device OUT endpoint transfer size register - array: - len: 8 - stride: 32 - byte_offset: 2832 - fieldset: DOEPTSIZ - - name: PCGCCTL - description: Power and clock gating control register - byte_offset: 3584 - fieldset: PCGCCTL - - name: FIFO - description: Device endpoint / host channel FIFO register - array: - len: 8 - stride: 4096 - byte_offset: 4096 - fieldset: FIFO -fieldset/CID: - description: Core ID register - fields: - - name: PRODUCT_ID - description: Product ID field - bit_offset: 0 - bit_size: 32 -fieldset/DAINT: - description: Device all endpoints interrupt register - fields: - - name: IEPINT - description: IN endpoint interrupt bits - bit_offset: 0 - bit_size: 16 - - name: OEPINT - description: OUT endpoint interrupt bits - bit_offset: 16 - bit_size: 16 -fieldset/DAINTMSK: - description: All endpoints interrupt mask register - fields: - - name: IEPM - description: IN EP interrupt mask bits - bit_offset: 0 - bit_size: 16 - - name: OEPM - description: OUT EP interrupt mask bits - bit_offset: 16 - bit_size: 16 -fieldset/DCFG: - description: Device configuration register - fields: - - name: DSPD - description: Device speed - bit_offset: 0 - bit_size: 2 - enum: DSPD - - name: NZLSOHSK - description: Non-zero-length status OUT handshake - bit_offset: 2 - bit_size: 1 - - name: DAD - description: Device address - bit_offset: 4 - bit_size: 7 - - name: PFIVL - description: Periodic frame interval - bit_offset: 11 - bit_size: 2 - enum: PFIVL -fieldset/DCTL: - description: Device control register - fields: - - name: RWUSIG - description: Remote wakeup signaling - bit_offset: 0 - bit_size: 1 - - name: SDIS - description: Soft disconnect - bit_offset: 1 - bit_size: 1 - - name: GINSTS - description: Global IN NAK status - bit_offset: 2 - bit_size: 1 - - name: GONSTS - description: Global OUT NAK status - bit_offset: 3 - bit_size: 1 - - name: TCTL - description: Test control - bit_offset: 4 - bit_size: 3 - - name: SGINAK - description: Set global IN NAK - bit_offset: 7 - bit_size: 1 - - name: CGINAK - description: Clear global IN NAK - bit_offset: 8 - bit_size: 1 - - name: SGONAK - description: Set global OUT NAK - bit_offset: 9 - bit_size: 1 - - name: CGONAK - description: Clear global OUT NAK - bit_offset: 10 - bit_size: 1 - - name: POPRGDNE - description: Power-on programming done - bit_offset: 11 - bit_size: 1 -fieldset/DIEPCTL: - description: Device endpoint control register - fields: - - name: MPSIZ - description: MPSIZ - bit_offset: 0 - bit_size: 11 - - name: USBAEP - description: USBAEP - bit_offset: 15 - bit_size: 1 - - name: EONUM_DPID - description: EONUM/DPID - bit_offset: 16 - bit_size: 1 - - name: NAKSTS - description: NAKSTS - bit_offset: 17 - bit_size: 1 - - name: EPTYP - description: EPTYP - bit_offset: 18 - bit_size: 2 - enum: EPTYP - - name: SNPM - description: SNPM - bit_offset: 20 - bit_size: 1 - - name: STALL - description: STALL - bit_offset: 21 - bit_size: 1 - - name: TXFNUM - description: TXFNUM - bit_offset: 22 - bit_size: 4 - - name: CNAK - description: CNAK - bit_offset: 26 - bit_size: 1 - - name: SNAK - description: SNAK - bit_offset: 27 - bit_size: 1 - - name: SD0PID_SEVNFRM - description: SD0PID/SEVNFRM - bit_offset: 28 - bit_size: 1 - - name: SODDFRM_SD1PID - description: SODDFRM/SD1PID - bit_offset: 29 - bit_size: 1 - - name: EPDIS - description: EPDIS - bit_offset: 30 - bit_size: 1 - - name: EPENA - description: EPENA - bit_offset: 31 - bit_size: 1 -fieldset/DIEPEMPMSK: - description: Device IN endpoint FIFO empty interrupt mask register - fields: - - name: INEPTXFEM - description: IN EP Tx FIFO empty interrupt mask bits - bit_offset: 0 - bit_size: 16 -fieldset/DIEPINT: - description: Device endpoint interrupt register - fields: - - name: XFRC - description: XFRC - bit_offset: 0 - bit_size: 1 - - name: EPDISD - description: EPDISD - bit_offset: 1 - bit_size: 1 - - name: TOC - description: TOC - bit_offset: 3 - bit_size: 1 - - name: ITTXFE - description: ITTXFE - bit_offset: 4 - bit_size: 1 - - name: INEPNE - description: INEPNE - bit_offset: 6 - bit_size: 1 - - name: TXFE - description: TXFE - bit_offset: 7 - bit_size: 1 -fieldset/DIEPMSK: - description: Device IN endpoint common interrupt mask register - fields: - - name: XFRCM - description: Transfer completed interrupt mask - bit_offset: 0 - bit_size: 1 - - name: EPDM - description: Endpoint disabled interrupt mask - bit_offset: 1 - bit_size: 1 - - name: TOM - description: Timeout condition mask (Non-isochronous endpoints) - bit_offset: 3 - bit_size: 1 - - name: ITTXFEMSK - description: IN token received when TxFIFO empty mask - bit_offset: 4 - bit_size: 1 - - name: INEPNMM - description: IN token received with EP mismatch mask - bit_offset: 5 - bit_size: 1 - - name: INEPNEM - description: IN endpoint NAK effective mask - bit_offset: 6 - bit_size: 1 -fieldset/DIEPTSIZ: - description: Device endpoint transfer size register - fields: - - name: XFRSIZ - description: Transfer size - bit_offset: 0 - bit_size: 19 - - name: PKTCNT - description: Packet count - bit_offset: 19 - bit_size: 10 - - name: MCNT - description: Multi count - bit_offset: 29 - bit_size: 2 -fieldset/DOEPCTL: - description: Device endpoint control register - fields: - - name: MPSIZ - description: MPSIZ - bit_offset: 0 - bit_size: 11 - - name: USBAEP - description: USBAEP - bit_offset: 15 - bit_size: 1 - - name: EONUM_DPID - description: EONUM/DPID - bit_offset: 16 - bit_size: 1 - - name: NAKSTS - description: NAKSTS - bit_offset: 17 - bit_size: 1 - - name: EPTYP - description: EPTYP - bit_offset: 18 - bit_size: 2 - enum: EPTYP - - name: SNPM - description: SNPM - bit_offset: 20 - bit_size: 1 - - name: STALL - description: STALL - bit_offset: 21 - bit_size: 1 - - name: CNAK - description: CNAK - bit_offset: 26 - bit_size: 1 - - name: SNAK - description: SNAK - bit_offset: 27 - bit_size: 1 - - name: SD0PID_SEVNFRM - description: SD0PID/SEVNFRM - bit_offset: 28 - bit_size: 1 - - name: SODDFRM - description: SODDFRM - bit_offset: 29 - bit_size: 1 - - name: EPDIS - description: EPDIS - bit_offset: 30 - bit_size: 1 - - name: EPENA - description: EPENA - bit_offset: 31 - bit_size: 1 -fieldset/DOEPINT: - description: Device endpoint interrupt register - fields: - - name: XFRC - description: XFRC - bit_offset: 0 - bit_size: 1 - - name: EPDISD - description: EPDISD - bit_offset: 1 - bit_size: 1 - - name: STUP - description: STUP - bit_offset: 3 - bit_size: 1 - - name: OTEPDIS - description: OTEPDIS - bit_offset: 4 - bit_size: 1 - - name: B2BSTUP - description: B2BSTUP - bit_offset: 6 - bit_size: 1 -fieldset/DOEPMSK: - description: Device OUT endpoint common interrupt mask register - fields: - - name: XFRCM - description: Transfer completed interrupt mask - bit_offset: 0 - bit_size: 1 - - name: EPDM - description: Endpoint disabled interrupt mask - bit_offset: 1 - bit_size: 1 - - name: STUPM - description: SETUP phase done mask - bit_offset: 3 - bit_size: 1 - - name: OTEPDM - description: OUT token received when endpoint disabled mask - bit_offset: 4 - bit_size: 1 -fieldset/DOEPTSIZ: - description: Device OUT endpoint transfer size register - fields: - - name: XFRSIZ - description: Transfer size - bit_offset: 0 - bit_size: 19 - - name: PKTCNT - description: Packet count - bit_offset: 19 - bit_size: 10 - - name: RXDPID_STUPCNT - description: Received data PID/SETUP packet count - bit_offset: 29 - bit_size: 2 -fieldset/DSTS: - description: Device status register - fields: - - name: SUSPSTS - description: Suspend status - bit_offset: 0 - bit_size: 1 - - name: ENUMSPD - description: Enumerated speed - bit_offset: 1 - bit_size: 2 - enum: DSPD - - name: EERR - description: Erratic error - bit_offset: 3 - bit_size: 1 - - name: FNSOF - description: Frame number of the received SOF - bit_offset: 8 - bit_size: 14 -fieldset/DTXFSTS: - description: Device IN endpoint transmit FIFO status register - fields: - - name: INEPTFSAV - description: IN endpoint TxFIFO space available - bit_offset: 0 - bit_size: 16 -fieldset/DVBUSDIS: - description: Device VBUS discharge time register - fields: - - name: VBUSDT - description: Device VBUS discharge time - bit_offset: 0 - bit_size: 16 -fieldset/DVBUSPULSE: - description: Device VBUS pulsing time register - fields: - - name: DVBUSP - description: Device VBUS pulsing time - bit_offset: 0 - bit_size: 12 -fieldset/FIFO: - description: FIFO register - fields: - - name: DATA - description: Data - bit_offset: 0 - bit_size: 32 -fieldset/GAHBCFG: - description: AHB configuration register - fields: - - name: GINT - description: Global interrupt mask - bit_offset: 0 - bit_size: 1 - - name: TXFELVL - description: TxFIFO empty level - bit_offset: 7 - bit_size: 1 - - name: PTXFELVL - description: Periodic TxFIFO empty level - bit_offset: 8 - bit_size: 1 -fieldset/GCCFG: - description: General core configuration register - fields: - - name: PWRDWN - description: Power down - bit_offset: 16 - bit_size: 1 - - name: VBUSASEN - description: Enable the VBUS "A" sensing device - bit_offset: 18 - bit_size: 1 - - name: VBUSBSEN - description: Enable the VBUS "B" sensing device - bit_offset: 19 - bit_size: 1 - - name: SOFOUTEN - description: SOF output enable - bit_offset: 20 - bit_size: 1 - - name: NOVBUSSENS - description: VBUS sensing disable - bit_offset: 21 - bit_size: 1 - - name: VBDEN - description: USB VBUS detection enable - bit_offset: 21 - bit_size: 1 - - name: PHYHSEN - description: Internal high-speed PHY enable. - bit_offset: 23 - bit_size: 1 -fieldset/GINTMSK: - description: Interrupt mask register - fields: - - name: MMISM - description: Mode mismatch interrupt mask - bit_offset: 1 - bit_size: 1 - - name: OTGINT - description: OTG interrupt mask - bit_offset: 2 - bit_size: 1 - - name: SOFM - description: Start of frame mask - bit_offset: 3 - bit_size: 1 - - name: RXFLVLM - description: Receive FIFO non-empty mask - bit_offset: 4 - bit_size: 1 - - name: NPTXFEM - description: Non-periodic TxFIFO empty mask - bit_offset: 5 - bit_size: 1 - - name: GINAKEFFM - description: Global non-periodic IN NAK effective mask - bit_offset: 6 - bit_size: 1 - - name: GONAKEFFM - description: Global OUT NAK effective mask - bit_offset: 7 - bit_size: 1 - - name: ESUSPM - description: Early suspend mask - bit_offset: 10 - bit_size: 1 - - name: USBSUSPM - description: USB suspend mask - bit_offset: 11 - bit_size: 1 - - name: USBRST - description: USB reset mask - bit_offset: 12 - bit_size: 1 - - name: ENUMDNEM - description: Enumeration done mask - bit_offset: 13 - bit_size: 1 - - name: ISOODRPM - description: Isochronous OUT packet dropped interrupt mask - bit_offset: 14 - bit_size: 1 - - name: EOPFM - description: End of periodic frame interrupt mask - bit_offset: 15 - bit_size: 1 - - name: EPMISM - description: Endpoint mismatch interrupt mask - bit_offset: 17 - bit_size: 1 - - name: IEPINT - description: IN endpoints interrupt mask - bit_offset: 18 - bit_size: 1 - - name: OEPINT - description: OUT endpoints interrupt mask - bit_offset: 19 - bit_size: 1 - - name: IISOIXFRM - description: Incomplete isochronous IN transfer mask - bit_offset: 20 - bit_size: 1 - - name: IPXFRM_IISOOXFRM - description: Incomplete periodic transfer mask (host mode) / Incomplete isochronous OUT transfer mask (device mode) - bit_offset: 21 - bit_size: 1 - - name: PRTIM - description: Host port interrupt mask - bit_offset: 24 - bit_size: 1 - - name: HCIM - description: Host channels interrupt mask - bit_offset: 25 - bit_size: 1 - - name: PTXFEM - description: Periodic TxFIFO empty mask - bit_offset: 26 - bit_size: 1 - - name: CIDSCHGM - description: Connector ID status change mask - bit_offset: 28 - bit_size: 1 - - name: DISCINT - description: Disconnect detected interrupt mask - bit_offset: 29 - bit_size: 1 - - name: SRQIM - description: Session request/new session detected interrupt mask - bit_offset: 30 - bit_size: 1 - - name: WUIM - description: Resume/remote wakeup detected interrupt mask - bit_offset: 31 - bit_size: 1 -fieldset/GINTSTS: - description: Core interrupt register - fields: - - name: CMOD - description: Current mode of operation - bit_offset: 0 - bit_size: 1 - - name: MMIS - description: Mode mismatch interrupt - bit_offset: 1 - bit_size: 1 - - name: OTGINT - description: OTG interrupt - bit_offset: 2 - bit_size: 1 - - name: SOF - description: Start of frame - bit_offset: 3 - bit_size: 1 - - name: RXFLVL - description: RxFIFO non-empty - bit_offset: 4 - bit_size: 1 - - name: NPTXFE - description: Non-periodic TxFIFO empty - bit_offset: 5 - bit_size: 1 - - name: GINAKEFF - description: Global IN non-periodic NAK effective - bit_offset: 6 - bit_size: 1 - - name: GOUTNAKEFF - description: Global OUT NAK effective - bit_offset: 7 - bit_size: 1 - - name: ESUSP - description: Early suspend - bit_offset: 10 - bit_size: 1 - - name: USBSUSP - description: USB suspend - bit_offset: 11 - bit_size: 1 - - name: USBRST - description: USB reset - bit_offset: 12 - bit_size: 1 - - name: ENUMDNE - description: Enumeration done - bit_offset: 13 - bit_size: 1 - - name: ISOODRP - description: Isochronous OUT packet dropped interrupt - bit_offset: 14 - bit_size: 1 - - name: EOPF - description: End of periodic frame interrupt - bit_offset: 15 - bit_size: 1 - - name: IEPINT - description: IN endpoint interrupt - bit_offset: 18 - bit_size: 1 - - name: OEPINT - description: OUT endpoint interrupt - bit_offset: 19 - bit_size: 1 - - name: IISOIXFR - description: Incomplete isochronous IN transfer - bit_offset: 20 - bit_size: 1 - - name: IPXFR_INCOMPISOOUT - description: Incomplete periodic transfer (host mode) / Incomplete isochronous OUT transfer (device mode) - bit_offset: 21 - bit_size: 1 - - name: HPRTINT - description: Host port interrupt - bit_offset: 24 - bit_size: 1 - - name: HCINT - description: Host channels interrupt - bit_offset: 25 - bit_size: 1 - - name: PTXFE - description: Periodic TxFIFO empty - bit_offset: 26 - bit_size: 1 - - name: CIDSCHG - description: Connector ID status change - bit_offset: 28 - bit_size: 1 - - name: DISCINT - description: Disconnect detected interrupt - bit_offset: 29 - bit_size: 1 - - name: SRQINT - description: Session request/new session detected interrupt - bit_offset: 30 - bit_size: 1 - - name: WKUPINT - description: Resume/remote wakeup detected interrupt - bit_offset: 31 - bit_size: 1 -fieldset/GNPTXSTS: - description: Non-periodic transmit FIFO/queue status register - fields: - - name: NPTXFSAV - description: Non-periodic TxFIFO space available - bit_offset: 0 - bit_size: 16 - - name: NPTQXSAV - description: Non-periodic transmit request queue space available - bit_offset: 16 - bit_size: 8 - - name: NPTXQTOP - description: Top of the non-periodic transmit request queue - bit_offset: 24 - bit_size: 7 -fieldset/GOTGCTL: - description: Control and status register - fields: - - name: SRQSCS - description: Session request success - bit_offset: 0 - bit_size: 1 - - name: SRQ - description: Session request - bit_offset: 1 - bit_size: 1 - - name: VBVALOEN - description: VBUS valid override enable - bit_offset: 2 - bit_size: 1 - - name: VBVALOVAL - description: VBUS valid override value - bit_offset: 3 - bit_size: 1 - - name: AVALOEN - description: A-peripheral session valid override enable - bit_offset: 4 - bit_size: 1 - - name: AVALOVAL - description: A-peripheral session valid override value - bit_offset: 5 - bit_size: 1 - - name: BVALOEN - description: B-peripheral session valid override enable - bit_offset: 6 - bit_size: 1 - - name: BVALOVAL - description: B-peripheral session valid override value - bit_offset: 7 - bit_size: 1 - - name: HNGSCS - description: Host negotiation success - bit_offset: 8 - bit_size: 1 - - name: HNPRQ - description: HNP request - bit_offset: 9 - bit_size: 1 - - name: HSHNPEN - description: Host set HNP enable - bit_offset: 10 - bit_size: 1 - - name: DHNPEN - description: Device HNP enabled - bit_offset: 11 - bit_size: 1 - - name: CIDSTS - description: Connector ID status - bit_offset: 16 - bit_size: 1 - - name: DBCT - description: Long/short debounce time - bit_offset: 17 - bit_size: 1 - - name: ASVLD - description: A-session valid - bit_offset: 18 - bit_size: 1 - - name: BSVLD - description: B-session valid - bit_offset: 19 - bit_size: 1 -fieldset/GOTGINT: - description: Interrupt register - fields: - - name: SEDET - description: Session end detected - bit_offset: 2 - bit_size: 1 - - name: SRSSCHG - description: Session request success status change - bit_offset: 8 - bit_size: 1 - - name: HNSSCHG - description: Host negotiation success status change - bit_offset: 9 - bit_size: 1 - - name: HNGDET - description: Host negotiation detected - bit_offset: 17 - bit_size: 1 - - name: ADTOCHG - description: A-device timeout change - bit_offset: 18 - bit_size: 1 - - name: DBCDNE - description: Debounce done - bit_offset: 19 - bit_size: 1 -fieldset/GRSTCTL: - description: Reset register - fields: - - name: CSRST - description: Core soft reset - bit_offset: 0 - bit_size: 1 - - name: HSRST - description: HCLK soft reset - bit_offset: 1 - bit_size: 1 - - name: FCRST - description: Host frame counter reset - bit_offset: 2 - bit_size: 1 - - name: RXFFLSH - description: RxFIFO flush - bit_offset: 4 - bit_size: 1 - - name: TXFFLSH - description: TxFIFO flush - bit_offset: 5 - bit_size: 1 - - name: TXFNUM - description: TxFIFO number - bit_offset: 6 - bit_size: 5 - - name: AHBIDL - description: AHB master idle - bit_offset: 31 - bit_size: 1 -fieldset/GRXFSIZ: - description: Receive FIFO size register - fields: - - name: RXFD - description: RxFIFO depth - bit_offset: 0 - bit_size: 16 -fieldset/GRXSTS: - description: Status read and pop register - fields: - - name: EPNUM - description: Endpoint number (device mode) / Channel number (host mode) - bit_offset: 0 - bit_size: 4 - - name: BCNT - description: Byte count - bit_offset: 4 - bit_size: 11 - - name: DPID - description: Data PID - bit_offset: 15 - bit_size: 2 - enum: DPID - - name: PKTSTSD - description: Packet status (device mode) - bit_offset: 17 - bit_size: 4 - enum: PKTSTSD - - name: PKTSTSH - description: Packet status (host mode) - bit_offset: 17 - bit_size: 4 - enum: PKTSTSH - - name: FRMNUM - description: Frame number (device mode) - bit_offset: 21 - bit_size: 4 -fieldset/GUSBCFG: - description: USB configuration register - fields: - - name: TOCAL - description: FS timeout calibration - bit_offset: 0 - bit_size: 3 - - name: PHYSEL - description: Full-speed internal serial transceiver enable - bit_offset: 6 - bit_size: 1 - - name: SRPCAP - description: SRP-capable - bit_offset: 8 - bit_size: 1 - - name: HNPCAP - description: HNP-capable - bit_offset: 9 - bit_size: 1 - - name: TRDT - description: USB turnaround time - bit_offset: 10 - bit_size: 4 - - name: FHMOD - description: Force host mode - bit_offset: 29 - bit_size: 1 - - name: FDMOD - description: Force device mode - bit_offset: 30 - bit_size: 1 - - name: CTXPKT - description: Corrupt Tx packet - bit_offset: 31 - bit_size: 1 -fieldset/HAINT: - description: Host all channels interrupt register - fields: - - name: HAINT - description: Channel interrupts - bit_offset: 0 - bit_size: 16 -fieldset/HAINTMSK: - description: Host all channels interrupt mask register - fields: - - name: HAINTM - description: Channel interrupt mask - bit_offset: 0 - bit_size: 16 -fieldset/HCCHAR: - description: Host channel characteristics register - fields: - - name: MPSIZ - description: Maximum packet size - bit_offset: 0 - bit_size: 11 - - name: EPNUM - description: Endpoint number - bit_offset: 11 - bit_size: 4 - - name: EPDIR - description: Endpoint direction - bit_offset: 15 - bit_size: 1 - - name: LSDEV - description: Low-speed device - bit_offset: 17 - bit_size: 1 - - name: EPTYP - description: Endpoint type - bit_offset: 18 - bit_size: 2 - enum: EPTYP - - name: MCNT - description: Multicount - bit_offset: 20 - bit_size: 2 - - name: DAD - description: Device address - bit_offset: 22 - bit_size: 7 - - name: ODDFRM - description: Odd frame - bit_offset: 29 - bit_size: 1 - - name: CHDIS - description: Channel disable - bit_offset: 30 - bit_size: 1 - - name: CHENA - description: Channel enable - bit_offset: 31 - bit_size: 1 -fieldset/HCFG: - description: Host configuration register - fields: - - name: FSLSPCS - description: FS/LS PHY clock select - bit_offset: 0 - bit_size: 2 - - name: FSLSS - description: FS- and LS-only support - bit_offset: 2 - bit_size: 1 -fieldset/HCINT: - description: Host channel interrupt register - fields: - - name: XFRC - description: Transfer completed - bit_offset: 0 - bit_size: 1 - - name: CHH - description: Channel halted - bit_offset: 1 - bit_size: 1 - - name: STALL - description: STALL response received interrupt - bit_offset: 3 - bit_size: 1 - - name: NAK - description: NAK response received interrupt - bit_offset: 4 - bit_size: 1 - - name: ACK - description: ACK response received/transmitted interrupt - bit_offset: 5 - bit_size: 1 - - name: TXERR - description: Transaction error - bit_offset: 7 - bit_size: 1 - - name: BBERR - description: Babble error - bit_offset: 8 - bit_size: 1 - - name: FRMOR - description: Frame overrun - bit_offset: 9 - bit_size: 1 - - name: DTERR - description: Data toggle error - bit_offset: 10 - bit_size: 1 -fieldset/HCINTMSK: - description: Host channel mask register - fields: - - name: XFRCM - description: Transfer completed mask - bit_offset: 0 - bit_size: 1 - - name: CHHM - description: Channel halted mask - bit_offset: 1 - bit_size: 1 - - name: STALLM - description: STALL response received interrupt mask - bit_offset: 3 - bit_size: 1 - - name: NAKM - description: NAK response received interrupt mask - bit_offset: 4 - bit_size: 1 - - name: ACKM - description: ACK response received/transmitted interrupt mask - bit_offset: 5 - bit_size: 1 - - name: NYET - description: Response received interrupt mask - bit_offset: 6 - bit_size: 1 - - name: TXERRM - description: Transaction error mask - bit_offset: 7 - bit_size: 1 - - name: BBERRM - description: Babble error mask - bit_offset: 8 - bit_size: 1 - - name: FRMORM - description: Frame overrun mask - bit_offset: 9 - bit_size: 1 - - name: DTERRM - description: Data toggle error mask - bit_offset: 10 - bit_size: 1 -fieldset/HCTSIZ: - description: Host channel transfer size register - fields: - - name: XFRSIZ - description: Transfer size - bit_offset: 0 - bit_size: 19 - - name: PKTCNT - description: Packet count - bit_offset: 19 - bit_size: 10 - - name: DPID - description: Data PID - bit_offset: 29 - bit_size: 2 -fieldset/HFIR: - description: Host frame interval register - fields: - - name: FRIVL - description: Frame interval - bit_offset: 0 - bit_size: 16 -fieldset/HFNUM: - description: Host frame number/frame time remaining register - fields: - - name: FRNUM - description: Frame number - bit_offset: 0 - bit_size: 16 - - name: FTREM - description: Frame time remaining - bit_offset: 16 - bit_size: 16 -fieldset/HNPTXSTS: - description: Non-periodic transmit FIFO/queue status register - fields: - - name: NPTXFSAV - description: Non-periodic TxFIFO space available - bit_offset: 0 - bit_size: 16 - - name: NPTQXSAV - description: Non-periodic transmit request queue space available - bit_offset: 16 - bit_size: 8 - - name: NPTXQTOP - description: Top of the non-periodic transmit request queue - bit_offset: 24 - bit_size: 7 -fieldset/FSIZ: - description: FIFO size register - fields: - - name: SA - description: RAM start address - bit_offset: 0 - bit_size: 16 - - name: FD - description: FIFO depth - bit_offset: 16 - bit_size: 16 -fieldset/HPRT: - description: Host port control and status register - fields: - - name: PCSTS - description: Port connect status - bit_offset: 0 - bit_size: 1 - - name: PCDET - description: Port connect detected - bit_offset: 1 - bit_size: 1 - - name: PENA - description: Port enable - bit_offset: 2 - bit_size: 1 - - name: PENCHNG - description: Port enable/disable change - bit_offset: 3 - bit_size: 1 - - name: POCA - description: Port overcurrent active - bit_offset: 4 - bit_size: 1 - - name: POCCHNG - description: Port overcurrent change - bit_offset: 5 - bit_size: 1 - - name: PRES - description: Port resume - bit_offset: 6 - bit_size: 1 - - name: PSUSP - description: Port suspend - bit_offset: 7 - bit_size: 1 - - name: PRST - description: Port reset - bit_offset: 8 - bit_size: 1 - - name: PLSTS - description: Port line status - bit_offset: 10 - bit_size: 2 - - name: PPWR - description: Port power - bit_offset: 12 - bit_size: 1 - - name: PTCTL - description: Port test control - bit_offset: 13 - bit_size: 4 - - name: PSPD - description: Port speed - bit_offset: 17 - bit_size: 2 -fieldset/HPTXSTS: - description: Periodic transmit FIFO/queue status register - fields: - - name: PTXFSAVL - description: Periodic transmit data FIFO space available - bit_offset: 0 - bit_size: 16 - - name: PTXQSAV - description: Periodic transmit request queue space available - bit_offset: 16 - bit_size: 8 - - name: PTXQTOP - description: Top of the periodic transmit request queue - bit_offset: 24 - bit_size: 8 -fieldset/PCGCCTL: - description: Power and clock gating control register - fields: - - name: STPPCLK - description: Stop PHY clock - bit_offset: 0 - bit_size: 1 - - name: GATEHCLK - description: Gate HCLK - bit_offset: 1 - bit_size: 1 - - name: PHYSUSP - description: PHY Suspended - bit_offset: 4 - bit_size: 1 -enum/DPID: - bit_size: 2 - variants: - - name: DATA0 - value: 0 - - name: DATA2 - value: 1 - - name: DATA1 - value: 2 - - name: MDATA - value: 3 -enum/DSPD: - bit_size: 2 - variants: - - name: HIGH_SPEED - description: High speed - value: 0 - - name: FULL_SPEED_EXTERNAL - description: Full speed using external ULPI PHY - value: 1 - - name: FULL_SPEED_INTERNAL - description: Full speed using internal embedded PHY - value: 3 -enum/EPTYP: - bit_size: 2 - variants: - - name: CONTROL - value: 0 - - name: ISOCHRONOUS - value: 1 - - name: BULK - value: 2 - - name: INTERRUPT - value: 3 -enum/PFIVL: - bit_size: 2 - variants: - - name: FRAME_INTERVAL_80 - description: 80% of the frame interval - value: 0 - - name: FRAME_INTERVAL_85 - description: 85% of the frame interval - value: 1 - - name: FRAME_INTERVAL_90 - description: 90% of the frame interval - value: 2 - - name: FRAME_INTERVAL_95 - description: 95% of the frame interval - value: 3 -enum/PKTSTSD: - bit_size: 4 - variants: - - name: OUT_NAK - description: Global OUT NAK (triggers an interrupt) - value: 1 - - name: OUT_DATA_RX - description: OUT data packet received - value: 2 - - name: OUT_DATA_DONE - description: OUT transfer completed (triggers an interrupt) - value: 3 - - name: SETUP_DATA_DONE - description: SETUP transaction completed (triggers an interrupt) - value: 4 - - name: SETUP_DATA_RX - description: SETUP data packet received - value: 6 -enum/PKTSTSH: - bit_size: 4 - variants: - - name: IN_DATA_RX - description: IN data packet received - value: 2 - - name: IN_DATA_DONE - description: IN transfer completed (triggers an interrupt) - value: 3 - - name: DATA_TOGGLE_ERR - description: Data toggle error (triggers an interrupt) - value: 5 - - name: CHANNEL_HALTED - description: Channel halted (triggers an interrupt) - value: 7 diff --git a/src/chips.rs b/src/chips.rs index 160605e..3ec1a75 100644 --- a/src/chips.rs +++ b/src/chips.rs @@ -217,8 +217,8 @@ impl PeriMatcher { ("STM32G0[BC]1.*:USB:.*", ("usb", "v4", "USB")), (".*:USB:.*", ("usb", "v3", "USB")), // # USB OTG - (".*:USB_OTG_FS:otgfs1_.*", ("otgfs", "v1", "OTG_FS")), - (".*:USB_OTG_HS:otghs1_.*", ("otghs", "v1", "OTG_HS")), + (".*:USB_OTG_FS:otgfs1_.*", ("otg", "v1", "OTG")), + (".*:USB_OTG_HS:otghs1_.*", ("otg", "v1", "OTG")), ("STM32F0.*:RCC:.*", ("rcc", "f0", "RCC")), ("STM32F100.*:RCC:.*", ("rcc", "f100", "RCC")), ("STM32F10[123].*:RCC:.*", ("rcc", "f1", "RCC")),