Subversion Repositories pentevo

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

                ifndef  __52xxusbinc            ; avoid multiple inclusion
__52xxusbinc    equ     1

                save
                listing off                     ; no listing over this file
                
;****************************************************************************
;*                                                                          *
;*   AS 1.42 - File 52XXUSB.INC                                             *
;*                                                                          *
;*   Contains SFR and Bit Definitions for ColdFire MCF52xx USB              *
;*                                                                          *
;****************************************************************************

__defusb        macro           P,Base
{P}ID           equ             Base+$000       ; Identification Register (32b)
REVISION        cffield         {P}ID,16,8      ;  Revision number of the module.
NID             cffield         {P}ID,8,6       ;  Ones-complement version of the ID bit field.
ID              cffield         {P}ID,0,6       ;  Configuration number.
{P}HWGENERAL    equ             Base+$004       ; General Hardware Parameters (32b)
SM              cffield         {P}HWGENERAL,9,2;  Serial mode.
PHYM            cffield         {P}HWGENERAL,6,3;  PHY Mode.
PHYW            cffield         {P}HWGENERAL,4,2;  PHY width.
{P}HWHOST       equ             Base+$008       ; Host Hardware Parameters (32b)
TTPER           cffield         {P}HWHOST,24,8  ;  Transaction translator periodic contexts.
TTASY           cffield         {P}HWHOST,16,8  ;  Transaction translator contexts.
NPORT           cffield         {P}HWHOST,1,3   ;  Indicates number of ports in host mode minus 1.
HC              cfbit           {P}HWHOST,0     ;  Indicates module is host capable.
{P}HWDEVICE     equ             Base+$00C       ; Device Hardware Parameters (32b)
DEVEP           cffield         {P}HWDEVICE,1,5 ;  Device endpoints.
DC              cfbit           {P}HWDEVICE,0   ;  Indicates the OTG module is device capable.
{P}HWTXBUF      equ             Base+$010       ; TX Buffer Hardware Parameters (32b)
TXLC            cfbit           {P}HWTXBUF,31   ;  Transmit local context registers.
TXCHANADD       cffield         {P}HWTXBUF,16,8 ;  Transmit channel address.
TXADD           cffield         {P}HWTXBUF,8,8  ;  Transmit address.
TXBURST         cffield         {P}HWTXBUF,0,8  ;  Transmit burst.
{P}HWRXBUF      equ             Base+$014       ; RX Buffer Hardware Parameters (32b)
RXADD           cffield         {P}HWRXBUF,8,8  ;  Receive address.
RXBURST         cffield         {P}HWRXBUF,0,8  ;  Receive burst.
{P}GPTIMER0LD   equ             Base+$080       ; General Purpose Timer 0 Load (32b)
GPTLD           cffield         {P}GPTIMER0LD,0,24      ;  Specifies the value to be loaded into the countdown timer on a reset.
{P}GPTIMER0CTL  equ             Base+$084       ; General Purpose Timer 0 Control (32b)
RUN             cfbit           {P}GPTIMER0CTL,31       ;  Timer run.
RST             cfbit           {P}GPTIMER0CTL,30       ;  Timer reset.
MODE            cfbit           {P}GPTIMER0CTL,24       ;  Timer mode.
GPTCNT          cffield         {P}GPTIMER0CTL,0,24     ;  Timer count.
{P}GPTIMER1LD   equ             Base+$088       ; General Purpose Timer 1 Load (32b)
GPTLD           cffield         {P}GPTIMER1LD,0,24      ;  Specifies the value to be loaded into the countdown timer on a reset.
{P}GPTIMER1CTL  equ             Base+$08C       ; General Purpose Timer 1 Control (32b)
RUN             cfbit           {P}GPTIMER1CTL,31       ;  Timer run.
RST             cfbit           {P}GPTIMER1CTL,30       ;  Timer reset.
MODE            cfbit           {P}GPTIMER1CTL,24       ;  Timer mode.
GPTCNT          cffield         {P}GPTIMER1CTL,0,24;  Timer count.
{P}HCIVERSION   equ             Base+$100       ; Host Interface Version Number (16b)
{P}CAPLENGTH    equ             Base+$103       ; Capability Register Length (8b)
{P}HCSPARAMS    equ             Base+$104       ; Host Structural Parameters (32b)
N_TT            cffield         {P}HCSPARAMS,24,4       ;  Number of transaction translators.
N_PTT           cffield         {P}HCSPARAMS,20,4       ;  Ports per transaction translator.
PI              cfbit           {P}HCSPARAMS,16 ;  Port indicators.
N_CC            cffield         {P}HCSPARAMS,12,4       ;  Number of companion controllers.
N_PCC           cffield         {P}HCSPARAMS,8,4        ;  Number ports per CC.
PPC             cfbit           {P}HCSPARAMS,4  ;  Power port control.
N_PORTS         cffield         {P}HCSPARAMS,0,4        ;  Number of ports.
{P}HCCPARAMS    equ             Base+$108       ; Host Capability Parameters (32b)
EECP            cffield         {P}HCCPARAMS,8,8        ;  EHCI extended capabilities pointer.
IST             cffield         {P}HCCPARAMS,4,4        ;  Isochronous scheduling threshold.
ASP             cfbit           {P}HCCPARAMS,2  ;  Asynchronous schedule park capability.
PFL             cfbit           {P}HCCPARAMS,1  ;  Programmable frame list flag.
ADC             cfbit           {P}HCCPARAMS,0  ;  64-bit addressing capability.
{P}DCIVERSION   equ             Base+$122       ; Device Interface Version Number (16b)
{P}DCCPARAMS    equ             Base+$124       ; Device Capability Parameters (32b)
HC              cfbit           {P}DCCPARAMS,8  ;  Host capable.
DC              cfbit           {P}DCCPARAMS,7  ;  Device Capable.
DEN             cffield         {P}DCCPARAMS,0,4        ;  Device endpoint number.
{P}USBCMD       equ             Base+$140       ; USB Command (32b)
ITC             cffield         {P}USBCMD,16,8  ;  Interrupt threshold control.
FS2             cfbit           {P}USBCMD,15    ;  Frame list size.
ATDTW           cfbit           {P}USBCMD,14    ;  Add dTD TripWire.
SUTW            cfbit           {P}USBCMD,13    ;  Setup TripWire.
ASPE            cfbit           {P}USBCMD,11    ;  Asynchronous schedule park mode enable.
ASP             cffield         {P}USBCMD,8,2   ;  Asynchronous schedule park mode count.
IAA             cfbit           {P}USBCMD,6     ;  Interrupt on async advance doorbell.
ASE             cfbit           {P}USBCMD,5     ;  Asynchronous schedule enable.
PSE             cfbit           {P}USBCMD,4     ;  Periodic schedule enable.
FS1             cfbit           {P}USBCMD,3     ;  Frame list size.
FS0             cfbit           {P}USBCMD,2     ;  Frame list size.
RST             cfbit           {P}USBCMD,1     ;  Controller reset.
RS              cfbit           {P}USBCMD,0     ;  Run/Stop.
{P}USBSTS       equ             Base+$144       ; USB Status (32b)
TI1             cfbit           {P}USBSTS,25    ;  General purpose timer 1 interrupt.
TI0             cfbit           {P}USBSTS,24    ;  General purpose timer 0 interrupt.
UPI             cfbit           {P}USBSTS,19    ;  USB host periodic interrupt.
UAI             cfbit           {P}USBSTS,18    ;  USB host asynchronous interrupt.
NAKI            cfbit           {P}USBSTS,16    ;  NAK interrupt.
AS              cfbit           {P}USBSTS,15    ;  Asynchronous schedule status.
PS              cfbit           {P}USBSTS,14    ;  Periodic schedule status.
RCL             cfbit           {P}USBSTS,13    ;  Reclamation.
HCH             cfbit           {P}USBSTS,12    ;  Host controller halted.
SLI             cfbit           {P}USBSTS,8     ;  Device-controller suspend.
SRI             cfbit           {P}USBSTS,7     ;  SOF received.
URI             cfbit           {P}USBSTS,6     ;  USB reset received.
AAI             cfbit           {P}USBSTS,5     ;  Interrupt on async advance.
SEI             cfbit           {P}USBSTS,4     ;  System error.
FRI             cfbit           {P}USBSTS,3     ;  Frame-list rollover.
PCI             cfbit           {P}USBSTS,2     ;  Port change detect.
UEI             cfbit           {P}USBSTS,1     ;  USB error interrupt.
UI              cfbit           {P}USBSTS,0     ;  USB interrupt (USBINT).
{P}USBINTR      equ             Base+$148       ; USB Interrupt Enable (32b)
TIE1            cfbit           {P}USBINTR,25   ;  General purpose timer 1 interrupt enable.
TIE0            cfbit           {P}USBINTR,24   ;  General purpose timer 0 interrupt enable.
UPIE            cfbit           {P}USBINTR,19   ;  USB host periodic interrupt enable.
UAIE            cfbit           {P}USBINTR,18   ;  USB host asynchronous interrupt enable.
NAKE            cfbit           {P}USBINTR,16   ;  NAK interrupt enable.
SLE             cfbit           {P}USBINTR,8    ;  Sleep (DC suspend) enable.
SRE             cfbit           {P}USBINTR,7    ;  SOF-received enable.
URE             cfbit           {P}USBINTR,6    ;  USB-reset enable.
AAE             cfbit           {P}USBINTR,5    ;  Interrupt on async advance enable.
SEE             cfbit           {P}USBINTR,4    ;  System error enable.
FRE             cfbit           {P}USBINTR,3    ;  Frame list rollover enable.
PCE             cfbit           {P}USBINTR,2    ;  Port change detect enable.
UEE             cfbit           {P}USBINTR,1    ;  USB error interrupt enable.
UE              cfbit           {P}USBINTR,0    ;  USB interrupt enable.
{P}FRINDEX      equ             Base+$14C       ; USB Frame Index (32b)
{P}PERIODICLISTBASE equ         Base+$154       ; Periodic Frame List Base Address (32b)
PERBASE         cffield         {P}PERIODICLISTBASE,12,20 ; Base Address b12..31.
{P}DEVICEADDR   equ             Base+$154       ; Device Address (32b)
USBADR          cffield         {P}DEVICEADDR,25,7      ;  Device Address.
{P}ASYNCLISTADDR equ            Base+$158       ; Current Asynchronous List Address (32b)
ASYBASE         cffield         {P}ASYNCLISTADDR,5,27 ; Link pointer low (LPL) (b5..31).
{P}EPLISTADDR   equ             Base+$158       ; Address at Endpoint List (32b)
EPBASE          cffield         {P}EPLISTADDR,11,21 ; Endpoint list address (b11..31).
{P}TTCTRL       equ             Base+$15C       ; Host TT Asynchronous Buffer Control (32b)
TTHA            cffield         {P}TTCTRL,24,7  ;  TT Hub Address.
{P}BURSTSIZE    equ             Base+$160       ; Master Interface Data Burst Size (32b)
TXPBURST        cffield         {P}BURSTSIZE,8,8        ;  Programable TX burst length.
RXPBURST        cffield         {P}BURSTSIZE,0,8        ;  Programable RX burst length.
{P}TXFILLTUNING equ             Base+$164       ; Host Transmit FIFO Tuning Control (32b)
TXFIFOTHRES     cffield         {P}TXFILLTUNING,16,6 ; FIFO burst threshold.
TXSCHHEALTH     cffield         {P}TXFILLTUNING,8,5 ; Scheduler health counter.
TXSCHOH         cffield         {P}TXFILLTUNING,0,8 ; Scheduler overhead.
{P}CONFIGFLAG   equ             Base+$180       ; Configure Flag Register (32b)
{P}PORTSC1      equ             Base+$184       ; Port Status/Control (32b)
PTS             cffield         {P}PORTSC1,30,2 ;  Port transceiver select.
PSPD            cffield         {P}PORTSC1,26,2 ;  Port speed.
PFSC            cfbit           {P}PORTSC1,24   ;  Port force full-speed connect.
PHCD            cfbit           {P}PORTSC1,23   ;  PHY low power suspend.
WKOC            cfbit           {P}PORTSC1,22   ;  Wake on over-current enable.
WKDS            cfbit           {P}PORTSC1,21   ;  Wake on disconnect enable.
WLCN            cfbit           {P}PORTSC1,20   ;  Wake on connect enable.
PTC             cffield         {P}PORTSC1,16,4 ;  Port test control.
PIC             cffield         {P}PORTSC1,14,2 ;  Port indicator control.
PO              cfbit           {P}PORTSC1,13   ;  Port owner.
PP              cfbit           {P}PORTSC1,12   ;  Port power.
LS              cffield         {P}PORTSC1,10,2 ;  Line status.
HSP             cfbit           {P}PORTSC1,9    ;  High speed port.
PR              cfbit           {P}PORTSC1,8    ;  Port reset.
SUSP            cfbit           {P}PORTSC1,7    ;  Suspend
FPR             cfbit           {P}PORTSC1,6    ;  Force Port Resume.
OCC             cfbit           {P}PORTSC1,5    ;  Over-current change.
OCA             cfbit           {P}PORTSC1,4    ;  Over-current active.
PEC             cfbit           {P}PORTSC1,3    ;  Port enable/disable change.
PE              cfbit           {P}PORTSC1,2    ;  Port enabled/disabled.
CSC             cfbit           {P}PORTSC1,1    ;  Connect change status.
CCS             cfbit           {P}PORTSC1,0    ;  Current connect status.
{P}OTGSC        equ             Base+$1A4       ; On-The-Go Status and Control (32b)
DPIE            cfbit           {P}OTGSC,30     ;  Data pulse interrupt enable.
1MSE            cfbit           {P}OTGSC,29     ;  1 millisecond timer interrupt enable.
BSEIE           cfbit           {P}OTGSC,28     ;  B session end interrupt enable.
BSVIE           cfbit           {P}OTGSC,27     ;  B session valid interrupt enable.
ASVIE           cfbit           {P}OTGSC,26     ;  A session valid interrupt enable.
AVVIE           cfbit           {P}OTGSC,25     ;  A VBUS valid interrupt enable.
IDIE            cfbit           {P}OTGSC,24     ;  USB ID interrupt enable.
DPIS            cfbit           {P}OTGSC,22     ;  Data pulse interrupt status.
1MSS            cfbit           {P}OTGSC,21     ;  1 millisecond timer interrupt status.
BSEIS           cfbit           {P}OTGSC,20     ;  B session end interrupt status.
BSVIS           cfbit           {P}OTGSC,19     ;  B session valid interrupt status.
ASVIS           cfbit           {P}OTGSC,18     ;  A session valid interrupt status.
AVVIS           cfbit           {P}OTGSC,17     ;  A VBUS valid interrupt status.
IDIS            cfbit           {P}OTGSC,16     ;  USB ID interrupt status.
DPS             cfbit           {P}OTGSC,14     ;  Data bus pulsing status.
1MST            cfbit           {P}OTGSC,13     ;  1 millisecond timer toggle.
BSE             cfbit           {P}OTGSC,12     ;  B session end.
BSV             cfbit           {P}OTGSC,11     ;  B Session valid.
ASV             cfbit           {P}OTGSC,10     ;  A Session valid.
AVV             cfbit           {P}OTGSC,9      ;  A VBus valid.
ID              cfbit           {P}OTGSC,8      ;  USB ID.
IDPU            cfbit           {P}OTGSC,5      ;  ID Pull-up.
DP              cfbit           {P}OTGSC,4      ;  Data pulsing.
OT              cfbit           {P}OTGSC,3      ;  OTG Termination.
VC              cfbit           {P}OTGSC,1      ;  VBUS charge.
VD              cfbit           {P}OTGSC,0      ;  VBUS discharge.
{P}USBMODE      equ             Base+$1A8       ; USB Mode Register (32b)
SDIS            cfbit           {P}USBMODE,4    ;  Stream disable.
SLOM            cfbit           {P}USBMODE,3    ;  Setup lockout mode.
ES              cfbit           {P}USBMODE,2    ;  Endian select.
CM              cffield         {P}USBMODE,0,2  ;  Controller mode.
{P}EPSETUPSR    equ             Base+$1AC       ; Endpoint Setup Status Register (32b)
EPSETUPSTAT     cffield         {P}EPSETUPSR,0,4;  Setup endpoint status.
{P}EPPRIME      equ             Base+$1B0       ; Endpoint Initialization (32b)
PETB            cffield         {P}EPPRIME,16,4 ;  Prime endpoint transmit buffer.
PERB            cffield         {P}EPPRIME,0,4  ;  Prime endpoint receive buffer.
{P}EPFLUSH      equ             Base+$1B4       ; Endpoint De-initialize (32b)
FETB            cffield         {P}EPFLUSH,16,4 ;  Flush endpoint transmit buffer.
FERB            cffield         {P}EPFLUSH,0,4  ;  Flush endpoint receive buffer.
{P}EPSR         equ             Base+$1B8       ; Endpoint Status Register (32b)
ETBR            cffield         {P}EPSR,16,4    ;  Endpoint transmit buffer ready
ERBR            cffield         {P}EPSR,0,4     ;  Endpoint receive buffer ready.
{P}EPCOMPLETE   equ             Base+$1BC       ; Endpoint Complete (32b)
ETCE            cffield         {P}EPCOMPLETE,16,4      ;  Endpoint transmit complete event.
ERCE            cffield         {P}EPCOMPLETE,4,4       ;  Endpoint receive complete event.
{P}EPCR0        equ             Base+$1C0       ; Endpoint Control Register 0 (32b)
TXE             cfbit           {P}EPCR0,23     ;  TX endpoint enable.
TXT             cffield         {P}EPCR0,18,2   ;  TX endpoint type.
TXS             cfbit           {P}EPCR0,16     ;  TX endpoint stall.
RXE             cfbit           {P}EPCR0,7      ;  RX endpoint enable.
RXT             cffield         {P}EPCR0,2,2    ;  RX endpoint type.
RXS             cfbit           {P}EPCR0,0      ;  RX endpoint stall.
__N             set             1
                rept            3
                __decstr        __NS,__N
{P}EPCR{"\{__NS}"}      equ     Base+$1C0+(__N*4)       ; Endpoint Control Register n (32b)
TXE             cfbit           {P}EPCR{"\{__NS}"},23   ;  TX endpoint enable.
TXR             cfbit           {P}EPCR{"\{__NS}"},22   ;  TX data toggle reset.
TXI             cfbit           {P}EPCR{"\{__NS}"},21   ;  TX data toggle inhibit.
TXT             cffield         {P}EPCR{"\{__NS}"},18,2 ;  TX endpoint type.
TXD             cfbit           {P}EPCR{"\{__NS}"},17   ;  TX endpoint data source.
TXS             cfbit           {P}EPCR{"\{__NS}"},16   ;  TX endpoint stall.
RXE             cfbit           {P}EPCR{"\{__NS}"},7    ;  RX endpoint enable.
RXR             cfbit           {P}EPCR{"\{__NS}"},6    ;  RX data toggle reset.
RXI             cfbit           {P}EPCR{"\{__NS}"},5    ;  RX data toggle inhibit.
RXT             cffield         {P}EPCR{"\{__NS}"},2,2  ;  RX endpoint type.
RXD             cfbit           {P}EPCR{"\{__NS}"},1    ;  RX endpoint data sink.
RXS             cfbit           {P}EPCR{"\{__NS}"},0    ;  RX endpoint stall.
__N             set             __N+4
                endm

                endm

                restore                         ; re-enable listing

                endif                           ; __52xxusbinc