URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [rtos/] [freertos-6.1.1/] [Demo/] [ColdFire_MCF52221_CodeWarrior/] [headers/] [MCF52221_USB_OTG.h] - Rev 578
Compare with Previous | Blame | View Log
/* Coldfire C Header File * Copyright Freescale Semiconductor Inc * All rights reserved. * * 2008/05/23 Revision: 0.95 * * (c) Copyright UNIS, a.s. 1997-2008 * UNIS, a.s. * Jundrovska 33 * 624 00 Brno * Czech Republic * http : www.processorexpert.com * mail : info@processorexpert.com */ #ifndef __MCF52221_USB_OTG_H__ #define __MCF52221_USB_OTG_H__ /********************************************************************* * * Universal Serial Bus - OTG Controller (USB_OTG) * *********************************************************************/ /* Register read/write macros */ #define MCF_USB_OTG_PER_ID (*(vuint8 *)(0x401C0000)) #define MCF_USB_OTG_ID_COMP (*(vuint8 *)(0x401C0004)) #define MCF_USB_OTG_REV (*(vuint8 *)(0x401C0008)) #define MCF_USB_OTG_ADD_INFO (*(vuint8 *)(0x401C000C)) #define MCF_USB_OTG_OTG_INT_STAT (*(vuint8 *)(0x401C0010)) #define MCF_USB_OTG_OTG_INT_EN (*(vuint8 *)(0x401C0014)) #define MCF_USB_OTG_OTG_STAT (*(vuint8 *)(0x401C0018)) #define MCF_USB_OTG_OTG_CTRL (*(vuint8 *)(0x401C001C)) #define MCF_USB_OTG_INT_STAT (*(vuint8 *)(0x401C0080)) #define MCF_USB_OTG_INT_ENB (*(vuint8 *)(0x401C0084)) #define MCF_USB_OTG_ERR_STAT (*(vuint8 *)(0x401C0088)) #define MCF_USB_OTG_ERR_ENB (*(vuint8 *)(0x401C008C)) #define MCF_USB_OTG_STAT (*(vuint8 *)(0x401C0090)) #define MCF_USB_OTG_CTL (*(vuint8 *)(0x401C0094)) #define MCF_USB_OTG_ADDR (*(vuint8 *)(0x401C0098)) #define MCF_USB_OTG_BDT_PAGE_01 (*(vuint8 *)(0x401C009C)) #define MCF_USB_OTG_FRM_NUML (*(vuint8 *)(0x401C00A0)) #define MCF_USB_OTG_FRM_NUMH (*(vuint8 *)(0x401C00A4)) #define MCF_USB_OTG_TOKEN (*(vuint8 *)(0x401C00A8)) #define MCF_USB_OTG_SOF_THLD (*(vuint8 *)(0x401C00AC)) #define MCF_USB_OTG_BDT_PAGE_02 (*(vuint8 *)(0x401C00B0)) #define MCF_USB_OTG_BDT_PAGE_03 (*(vuint8 *)(0x401C00B4)) #define MCF_USB_OTG_ENDPT0 (*(vuint8 *)(0x401C00C0)) #define MCF_USB_OTG_ENDPT1 (*(vuint8 *)(0x401C00C4)) #define MCF_USB_OTG_ENDPT2 (*(vuint8 *)(0x401C00C8)) #define MCF_USB_OTG_ENDPT3 (*(vuint8 *)(0x401C00CC)) #define MCF_USB_OTG_ENDPT4 (*(vuint8 *)(0x401C00D0)) #define MCF_USB_OTG_ENDPT5 (*(vuint8 *)(0x401C00D4)) #define MCF_USB_OTG_ENDPT6 (*(vuint8 *)(0x401C00D8)) #define MCF_USB_OTG_ENDPT7 (*(vuint8 *)(0x401C00DC)) #define MCF_USB_OTG_ENDPT8 (*(vuint8 *)(0x401C00E0)) #define MCF_USB_OTG_ENDPT9 (*(vuint8 *)(0x401C00E4)) #define MCF_USB_OTG_ENDPT10 (*(vuint8 *)(0x401C00E8)) #define MCF_USB_OTG_ENDPT11 (*(vuint8 *)(0x401C00EC)) #define MCF_USB_OTG_ENDPT12 (*(vuint8 *)(0x401C00F0)) #define MCF_USB_OTG_ENDPT13 (*(vuint8 *)(0x401C00F4)) #define MCF_USB_OTG_ENDPT14 (*(vuint8 *)(0x401C00F8)) #define MCF_USB_OTG_ENDPT15 (*(vuint8 *)(0x401C00FC)) #define MCF_USB_OTG_USB_CTRL (*(vuint8 *)(0x401C0100)) #define MCF_USB_OTG_USB_OTG_OBSERVE (*(vuint8 *)(0x401C0104)) #define MCF_USB_OTG_USB_OTG_CONTROL (*(vuint8 *)(0x401C0108)) #define MCF_USB_OTG_ENDPT(x) (*(vuint8 *)(0x401C00C0 + ((x)*0x4))) /* Other macros */ #define MCF_USB_OTG_FRM_NUM (MCF_USB_OTG_INT_STAT=MCF_USB_OTG_INT_STAT_SOF_TOK ,MCF_USB_OTG_FRM_NUML | (((vuint16)MCF_USB_OTG_FRM_NUMH)<<8)) /* Bit definitions and macros for MCF_USB_OTG_PER_ID */ #define MCF_USB_OTG_PER_ID_ID(x) (((x)&0x3F)<<0) /* Bit definitions and macros for MCF_USB_OTG_ID_COMP */ #define MCF_USB_OTG_ID_COMP_NID(x) (((x)&0x3F)<<0) /* Bit definitions and macros for MCF_USB_OTG_REV */ #define MCF_USB_OTG_REV_REV(x) (((x)&0xFF)<<0) /* Bit definitions and macros for MCF_USB_OTG_ADD_INFO */ #define MCF_USB_OTG_ADD_INFO_IEHOST (0x1) #define MCF_USB_OTG_ADD_INFO_IRQ_NUM(x) (((x)&0x1F)<<0x3) /* Bit definitions and macros for MCF_USB_OTG_OTG_INT_STAT */ #define MCF_USB_OTG_OTG_INT_STAT_A_VBUS_CHG (0x1) #define MCF_USB_OTG_OTG_INT_STAT_B_SESS_CHG (0x4) #define MCF_USB_OTG_OTG_INT_STAT_SESS_VLD_CHG (0x8) #define MCF_USB_OTG_OTG_INT_STAT_LINE_STATE_CHG (0x20) #define MCF_USB_OTG_OTG_INT_STAT_1_MSEC (0x40) #define MCF_USB_OTG_OTG_INT_STAT_ID_CHG (0x80) /* Bit definitions and macros for MCF_USB_OTG_OTG_INT_EN */ #define MCF_USB_OTG_OTG_INT_EN_A_VBUS_EN (0x1) #define MCF_USB_OTG_OTG_INT_EN_B_SESS_EN (0x4) #define MCF_USB_OTG_OTG_INT_EN_SESS_VLD_EN (0x8) #define MCF_USB_OTG_OTG_INT_EN_LINE_STATE_EN (0x20) #define MCF_USB_OTG_OTG_INT_EN_1_MSEC_EN (0x40) #define MCF_USB_OTG_OTG_INT_EN_ID_EN (0x80) /* Bit definitions and macros for MCF_USB_OTG_OTG_STAT */ #define MCF_USB_OTG_OTG_STAT_A_VBUS_VLD (0x1) #define MCF_USB_OTG_OTG_STAT_B_SESS_END (0x4) #define MCF_USB_OTG_OTG_STAT_SESS_VLD (0x8) #define MCF_USB_OTG_OTG_STAT_LINE_STATE_STABLE (0x20) #define MCF_USB_OTG_OTG_STAT_1_MSEC_EN (0x40) #define MCF_USB_OTG_OTG_STAT_ID (0x80) /* Bit definitions and macros for MCF_USB_OTG_OTG_CTRL */ #define MCF_USB_OTG_OTG_CTRL_VBUS_DSCHG (0x1) #define MCF_USB_OTG_OTG_CTRL_VBUS_CHG (0x2) #define MCF_USB_OTG_OTG_CTRL_OTG_EN (0x4) #define MCF_USB_OTG_OTG_CTRL_VBUS_ON (0x8) #define MCF_USB_OTG_OTG_CTRL_DM_LOW (0x10) #define MCF_USB_OTG_OTG_CTRL_DP_LOW (0x20) #define MCF_USB_OTG_OTG_CTRL_DP_HIGH (0x80) /* Bit definitions and macros for MCF_USB_OTG_INT_STAT */ #define MCF_USB_OTG_INT_STAT_USB_RST (0x1) #define MCF_USB_OTG_INT_STAT_ERROR (0x2) #define MCF_USB_OTG_INT_STAT_SOF_TOK (0x4) #define MCF_USB_OTG_INT_STAT_TOK_DNE (0x8) #define MCF_USB_OTG_INT_STAT_SLEEP (0x10) #define MCF_USB_OTG_INT_STAT_RESUME (0x20) #define MCF_USB_OTG_INT_STAT_ATTACH (0x40) #define MCF_USB_OTG_INT_STAT_STALL (0x80) /* Bit definitions and macros for MCF_USB_OTG_INT_ENB */ #define MCF_USB_OTG_INT_ENB_USB_RST_EN (0x1) #define MCF_USB_OTG_INT_ENB_ERROR_EN (0x2) #define MCF_USB_OTG_INT_ENB_SOF_TOK_EN (0x4) #define MCF_USB_OTG_INT_ENB_TOK_DNE_EN (0x8) #define MCF_USB_OTG_INT_ENB_SLEEP_EN (0x10) #define MCF_USB_OTG_INT_ENB_RESUME_EN (0x20) #define MCF_USB_OTG_INT_ENB_ATTACH_EN (0x40) #define MCF_USB_OTG_INT_ENB_STALL_EN (0x80) /* Bit definitions and macros for MCF_USB_OTG_ERR_STAT */ #define MCF_USB_OTG_ERR_STAT_PID_ERR (0x1) #define MCF_USB_OTG_ERR_STAT_CRC5_EOF (0x2) #define MCF_USB_OTG_ERR_STAT_CRC16 (0x4) #define MCF_USB_OTG_ERR_STAT_DFN8 (0x8) #define MCF_USB_OTG_ERR_STAT_BTO_ERR (0x10) #define MCF_USB_OTG_ERR_STAT_DMA_ERR (0x20) #define MCF_USB_OTG_ERR_STAT_BTS_ERR (0x80) /* Bit definitions and macros for MCF_USB_OTG_ERR_ENB */ #define MCF_USB_OTG_ERR_ENB_PID_ERR_EN (0x1) #define MCF_USB_OTG_ERR_ENB_CRC5_EOF_EN (0x2) #define MCF_USB_OTG_ERR_ENB_CRC16_EN (0x4) #define MCF_USB_OTG_ERR_ENB_DFN8_EN (0x8) #define MCF_USB_OTG_ERR_ENB_BTO_ERR_EN (0x10) #define MCF_USB_OTG_ERR_ENB_DMA_ERR_EN (0x20) #define MCF_USB_OTG_ERR_ENB_BTS_ERR_EN (0x80) /* Bit definitions and macros for MCF_USB_OTG_STAT */ #define MCF_USB_OTG_STAT_ODD (0x4) #define MCF_USB_OTG_STAT_TX (0x8) #define MCF_USB_OTG_STAT_ENDP(x) (((x)&0xF)<<0x4) /* Bit definitions and macros for MCF_USB_OTG_CTL */ #define MCF_USB_OTG_CTL_USB_EN_SOF_EN (0x1) #define MCF_USB_OTG_CTL_ODD_RST (0x2) #define MCF_USB_OTG_CTL_RESUME (0x4) #define MCF_USB_OTG_CTL_HOST_MODE_EN (0x8) #define MCF_USB_OTG_CTL_RESET (0x10) #define MCF_USB_OTG_CTL_TXSUSPEND_TOKENBUSY (0x20) #define MCF_USB_OTG_CTL_SE0 (0x40) #define MCF_USB_OTG_CTL_JSTATE (0x80) /* Bit definitions and macros for MCF_USB_OTG_ADDR */ #define MCF_USB_OTG_ADDR_ADDR(x) (((x)&0x7F)<<0) #define MCF_USB_OTG_ADDR_LS_EN (0x80) /* Bit definitions and macros for MCF_USB_OTG_BDT_PAGE_01 */ #define MCF_USB_OTG_BDT_PAGE_01_BDT_BA9 (0x2) #define MCF_USB_OTG_BDT_PAGE_01_BDT_BA10 (0x4) #define MCF_USB_OTG_BDT_PAGE_01_BDT_BA11 (0x8) #define MCF_USB_OTG_BDT_PAGE_01_BDT_BA12 (0x10) #define MCF_USB_OTG_BDT_PAGE_01_BDT_BA13 (0x20) #define MCF_USB_OTG_BDT_PAGE_01_BDT_BA14 (0x40) #define MCF_USB_OTG_BDT_PAGE_01_BDT_BA15 (0x80) /* Bit definitions and macros for MCF_USB_OTG_FRM_NUML */ #define MCF_USB_OTG_FRM_NUML_FRM0 (0x1) #define MCF_USB_OTG_FRM_NUML_FRM1 (0x2) #define MCF_USB_OTG_FRM_NUML_FRM2 (0x4) #define MCF_USB_OTG_FRM_NUML_FRM3 (0x8) #define MCF_USB_OTG_FRM_NUML_FRM4 (0x10) #define MCF_USB_OTG_FRM_NUML_FRM5 (0x20) #define MCF_USB_OTG_FRM_NUML_FRM6 (0x40) #define MCF_USB_OTG_FRM_NUML_FRM7 (0x80) /* Bit definitions and macros for MCF_USB_OTG_FRM_NUMH */ #define MCF_USB_OTG_FRM_NUMH_FRM8 (0x1) #define MCF_USB_OTG_FRM_NUMH_FRM9 (0x2) #define MCF_USB_OTG_FRM_NUMH_FRM10 (0x4) /* Bit definitions and macros for MCF_USB_OTG_TOKEN */ #define MCF_USB_OTG_TOKEN_TOKEN_ENDPT(x) (((x)&0xF)<<0) #define MCF_USB_OTG_TOKEN_TOKEN_PID(x) (((x)&0xF)<<0x4) #define MCF_USB_OTG_TOKEN_TOKEN_PID_OUT (0x10) #define MCF_USB_OTG_TOKEN_TOKEN_PID_IN (0x90) #define MCF_USB_OTG_TOKEN_TOKEN_PID_SETUP (0xD0) /* Bit definitions and macros for MCF_USB_OTG_SOF_THLD */ #define MCF_USB_OTG_SOF_THLD_CNT0 (0x1) #define MCF_USB_OTG_SOF_THLD_CNT1 (0x2) #define MCF_USB_OTG_SOF_THLD_CNT2 (0x4) #define MCF_USB_OTG_SOF_THLD_CNT3 (0x8) #define MCF_USB_OTG_SOF_THLD_CNT4 (0x10) #define MCF_USB_OTG_SOF_THLD_CNT5 (0x20) #define MCF_USB_OTG_SOF_THLD_CNT6 (0x40) #define MCF_USB_OTG_SOF_THLD_CNT7 (0x80) /* Bit definitions and macros for MCF_USB_OTG_BDT_PAGE_02 */ #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA16 (0x1) #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA17 (0x2) #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA18 (0x4) #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA19 (0x8) #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA20 (0x10) #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA21 (0x20) #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA22 (0x40) #define MCF_USB_OTG_BDT_PAGE_02_BDT_BA23 (0x80) /* Bit definitions and macros for MCF_USB_OTG_BDT_PAGE_03 */ #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA24 (0x1) #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA25 (0x2) #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA26 (0x4) #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA27 (0x8) #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA28 (0x10) #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA29 (0x20) #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA30 (0x40) #define MCF_USB_OTG_BDT_PAGE_03_BDT_BA31 (0x80) /* Bit definitions and macros for MCF_USB_OTG_ENDPT */ #define MCF_USB_OTG_ENDPT_EP_HSHK (0x1) #define MCF_USB_OTG_ENDPT_EP_STALL (0x2) #define MCF_USB_OTG_ENDPT_EP_TX_EN (0x4) #define MCF_USB_OTG_ENDPT_EP_RX_EN (0x8) #define MCF_USB_OTG_ENDPT_EP_CTL_DIS (0x10) #define MCF_USB_OTG_ENDPT_RETRY_DIS (0x40) #define MCF_USB_OTG_ENDPT_HOST_WO_HUB (0x80) /* Bit definitions and macros for MCF_USB_OTG_USB_CTRL */ #define MCF_USB_OTG_USB_CTRL_CLK_SRC(x) (((x)&0x3)<<0) #define MCF_USB_OTG_USB_CTRL_CLK_SRC_ALTCLK (0) #define MCF_USB_OTG_USB_CTRL_CLK_SRC_OSCCLK (0x1) #define MCF_USB_OTG_USB_CTRL_CLK_SRC_SYSCLK (0x3) #define MCF_USB_OTG_USB_CTRL_PDE (0x40) #define MCF_USB_OTG_USB_CTRL_SUSP (0x80) /* Bit definitions and macros for MCF_USB_OTG_USB_OTG_OBSERVE */ #define MCF_USB_OTG_USB_OTG_OBSERVE_VBUSDIS (0x2) #define MCF_USB_OTG_USB_OTG_OBSERVE_VBUSCHG (0x4) #define MCF_USB_OTG_USB_OTG_OBSERVE_VBUSE (0x8) #define MCF_USB_OTG_USB_OTG_OBSERVE_DM_PD (0x10) #define MCF_USB_OTG_USB_OTG_OBSERVE_DP_PD (0x40) #define MCF_USB_OTG_USB_OTG_OBSERVE_DP_PU (0x80) /* Bit definitions and macros for MCF_USB_OTG_USB_OTG_CONTROL */ #define MCF_USB_OTG_USB_OTG_CONTROL_SESSEND (0x1) #define MCF_USB_OTG_USB_OTG_CONTROL_SESSVLD (0x2) #define MCF_USB_OTG_USB_OTG_CONTROL_VBUSVLD (0x4) #define MCF_USB_OTG_USB_OTG_CONTROL_ID (0x8) #define MCF_USB_OTG_USB_OTG_CONTROL_VBUSD (0x10) #endif /* __MCF52221_USB_OTG_H__ */