Logo Search packages:      
Sourcecode: linux-fsl-imx51 version File versions  Download package

arcotg_udc.h File Reference


Detailed Description

Freescale USB device/endpoint management registers.

Definition in file arcotg_udc.h.

#include <mach/hardware.h>

Go to the source code of this file.

Classes

struct  ep_queue_head
struct  ep_td_struct
struct  fsl_ep
struct  fsl_req
struct  fsl_udc
struct  usb_dr_device
struct  usb_sys_interface

Defines

#define DATA_STATE_NEED_ZLP   2
#define DATA_STATE_RECV   4
#define DATA_STATE_XMIT   1
#define DBG(fmt, args...)   do {} while (0)
#define DCCPARAMS_DC   0x00000080
#define DCCPARAMS_DEN_MASK   0x0000001f
#define DTD_ADDR_MASK   0xFFFFFFE0
#define DTD_ALIGNMENT   0x20
#define DTD_ERROR_MASK
#define DTD_IOC   (0x00008000)
#define DTD_LENGTH_BIT_POS   (16)
#define DTD_NEXT_TERMINATE   (0x00000001)
#define DTD_PACKET_SIZE   (0x7FFF0000)
#define DTD_RESERVED_FIELDS   (0x80007300)
#define DTD_STATUS_ACTIVE   (0x00000080)
#define DTD_STATUS_DATA_BUFF_ERR   (0x00000020)
#define DTD_STATUS_HALTED   (0x00000040)
#define DTD_STATUS_TRANSACTION_ERR   (0x00000008)
#define EP_DIR_IN   1
#define EP_DIR_OUT   0
#define ep_index(EP)   ((EP)->desc->bEndpointAddress&0xF)
#define ep_is_in(EP)
#define EP_MAX_LENGTH_TRANSFER   (0x4000)
#define ep_maxpacket(EP)   ((EP)->ep.maxpacket)
#define EP_QUEUE_CURRENT_OFFSET_MASK   (0x00000FFF)
#define EP_QUEUE_FRINDEX_MASK   (0x000007FF)
#define EP_QUEUE_HEAD_IOC   (0x00008000)
#define EP_QUEUE_HEAD_IOS   (0x00008000)
#define EP_QUEUE_HEAD_MAX_PKT_LEN(ep_info)   (((ep_info)>>16)&0x07ff)
#define EP_QUEUE_HEAD_MAX_PKT_LEN_POS   (16)
#define EP_QUEUE_HEAD_MULT_POS   (30)
#define EP_QUEUE_HEAD_MULTO   (0x00000C00)
#define EP_QUEUE_HEAD_NEXT_POINTER_MASK   0xFFFFFFE0
#define EP_QUEUE_HEAD_NEXT_TERMINATE   (0x00000001)
#define EP_QUEUE_HEAD_STATUS_ACTIVE   (0x00000080)
#define EP_QUEUE_HEAD_STATUS_HALT   (0x00000040)
#define EP_QUEUE_HEAD_ZLT_SEL   (0x20000000)
#define EP_SETUP_STATUS_EP0   (0x00000001)
#define EP_SETUP_STATUS_MASK   (0x0000003F)
#define EPCTRL_EP_TYPE_BULK   (2)
#define EPCTRL_EP_TYPE_CONTROL   (0)
#define EPCTRL_EP_TYPE_INTERRUPT   (3)
#define EPCTRL_EP_TYPE_ISO   (1)
#define EPCTRL_RX_DATA_SINK   (0x00000002)
#define EPCTRL_RX_DATA_TOGGLE_INH   (0x00000020)
#define EPCTRL_RX_DATA_TOGGLE_RST   (0x00000040)
#define EPCTRL_RX_ENABLE   (0x00000080)
#define EPCTRL_RX_EP_STALL   (0x00000001)
#define EPCTRL_RX_EP_TYPE_SHIFT   (2)
#define EPCTRL_RX_TYPE   (0x0000000C)
#define EPCTRL_TX_DATA_SOURCE   (0x00020000)
#define EPCTRL_TX_DATA_TOGGLE_INH   (0x00200000)
#define EPCTRL_TX_DATA_TOGGLE_RST   (0x00400000)
#define EPCTRL_TX_ENABLE   (0x00800000)
#define EPCTRL_TX_EP_STALL   (0x00010000)
#define EPCTRL_TX_EP_TYPE_SHIFT   (18)
#define EPCTRL_TX_TYPE   (0x000C0000)
#define EPFLUSH_RX_OFFSET   (0x00000000)
#define EPFLUSH_TX_OFFSET   (0x00010000)
#define ERR(stuff...)   printk(KERN_ERR "udc: " stuff)
#define FALSE   0
#define get_ep_by_pipe(udc, pipe)
#define get_pipe_by_windex(windex)
#define INFO(stuff...)   printk(KERN_INFO "udc: " stuff)
#define IRAM_PPH_NTD   0
#define IRAM_TD_PPH_SIZE   0
#define MSC_BULK_CB_WRAP_LEN   31
#define NEED_IRAM(ep)
#define OTGSC_B_SESSION_VALID   (1 << 11)
#define OTGSC_B_SESSION_VALID_IRQ_EN   (1 << 27)
#define OTGSC_B_SESSION_VALID_IRQ_STS   (1 << 19)
#define PHY_CTRL0_CONF2   (1 << 26)
#define PORTSCX_CONNECT_STATUS_CHANGE   (0x00000002)
#define PORTSCX_CURRENT_CONNECT_STATUS   (0x00000001)
#define PORTSCX_LINE_STATUS_BIT_POS   (10)
#define PORTSCX_LINE_STATUS_BITS   (0x00000C00)
#define PORTSCX_LINE_STATUS_JSTATE   (0x00000400)
#define PORTSCX_LINE_STATUS_KSTATE   (0x00000800)
#define PORTSCX_LINE_STATUS_SE0   (0x00000000)
#define PORTSCX_LINE_STATUS_UNDEF   (0x00000C00)
#define PORTSCX_OVER_CURRENT_ACT   (0x00000010)
#define PORTSCX_OVER_CURRENT_CHG   (0x00000020)
#define PORTSCX_PHY_LOW_POWER_SPD   (0x00800000)
#define PORTSCX_PHY_TYPE_SEL   (0xC0000000)
#define PORTSCX_PIC_AMBER   (0x00004000)
#define PORTSCX_PIC_BIT_POS   (14)
#define PORTSCX_PIC_GREEN   (0x00008000)
#define PORTSCX_PIC_OFF   (0x00000000)
#define PORTSCX_PIC_UNDEF   (0x0000C000)
#define PORTSCX_PORT_EN_DIS_CHANGE   (0x00000008)
#define PORTSCX_PORT_ENABLE   (0x00000004)
#define PORTSCX_PORT_FORCE_FULL_SPEED   (0x01000000)
#define PORTSCX_PORT_FORCE_RESUME   (0x00000040)
#define PORTSCX_PORT_INDICTOR_CTRL   (0x0000C000)
#define PORTSCX_PORT_POWER   (0x00001000)
#define PORTSCX_PORT_RESET   (0x00000100)
#define PORTSCX_PORT_SPEED_FULL   (0x00000000)
#define PORTSCX_PORT_SPEED_HIGH   (0x08000000)
#define PORTSCX_PORT_SPEED_LOW   (0x04000000)
#define PORTSCX_PORT_SPEED_MASK   (0x0C000000)
#define PORTSCX_PORT_SPEED_UNDEF   (0x0C000000)
#define PORTSCX_PORT_SUSPEND   (0x00000080)
#define PORTSCX_PORT_TEST_CTRL   (0x000F0000)
#define PORTSCX_PORT_WIDTH   (0x10000000)
#define PORTSCX_PTC_BIT_POS   (16)
#define PORTSCX_PTC_DISABLE   (0x00000000)
#define PORTSCX_PTC_FORCE_EN   (0x00050000)
#define PORTSCX_PTC_JSTATE   (0x00010000)
#define PORTSCX_PTC_KSTATE   (0x00020000)
#define PORTSCX_PTC_PACKET   (0x00040000)
#define PORTSCX_PTC_SEQNAK   (0x00030000)
#define PORTSCX_PTS_BIT_POS   (30)
#define PORTSCX_PTS_FSLS   (0xC0000000)
#define PORTSCX_PTS_ULPI   (0x80000000)
#define PORTSCX_PTS_UTMI   (0x00000000)
#define PORTSCX_PTW   (0x10000000)
#define PORTSCX_PTW_16BIT   (0x10000000)
#define PORTSCX_PTW_8BIT   (0x00000000)
#define PORTSCX_SPEED_BIT_POS   (26)
#define PORTSCX_WAKE_ON_CONNECT_DIS   (0x00200000)
#define PORTSCX_WAKE_ON_CONNECT_EN   (0x00100000)
#define PORTSCX_WAKE_ON_OVER_CURRENT   (0x00400000)
#define PRI_CTRL_PRI_LVL0   (0x00000003)
#define PRI_CTRL_PRI_LVL1   (0x0000000C)
#define QH_ALIGNMENT   2048
#define REQ_UNCOMPLETE   (1)
#define SI_CTRL_ERR_DISABLE   (0x00000010)
#define SI_CTRL_IDRC_DISABLE   (0x00000008)
#define SI_CTRL_RD_PREFEFETCH_VAL   (0x00000001)
#define SI_CTRL_RD_PREFETCH_DISABLE   (0x00000002)
#define SI_CTRL_RD_SAFE_EN   (0x00000004)
#define SNOOP_ADDRESS_MASK   (0xFFFFF000)
#define SNOOP_SIZE_128KB   (0x10)
#define SNOOP_SIZE_128MB   (0x1A)
#define SNOOP_SIZE_16KB   (0x0D)
#define SNOOP_SIZE_16MB   (0x17)
#define SNOOP_SIZE_1GB   (0x1D)
#define SNOOP_SIZE_1MB   (0x13)
#define SNOOP_SIZE_256KB   (0x11)
#define SNOOP_SIZE_256MB   (0x1B)
#define SNOOP_SIZE_2GB   (0x1E)
#define SNOOP_SIZE_2MB   (0x14)
#define SNOOP_SIZE_32KB   (0x0E)
#define SNOOP_SIZE_32MB   (0x18)
#define SNOOP_SIZE_4KB   (0x0B)
#define SNOOP_SIZE_4MB   (0x15)
#define SNOOP_SIZE_512KB   (0x12)
#define SNOOP_SIZE_512MB   (0x1C)
#define SNOOP_SIZE_64KB   (0x0F)
#define SNOOP_SIZE_64MB   (0x19)
#define SNOOP_SIZE_8KB   (0x0C)
#define SNOOP_SIZE_8MB   (0x16)
#define SNOOP_SIZE_ZERO   (0x00)
#define TRUE   1
#define UDC_DMA_BOUNDARY   0x1000
#define USB_BULK_RESET_REQUEST   0xff
#define USB_CMD_ASP   (0x00000300)
#define USB_CMD_ASP_00   (0x00000000)
#define USB_CMD_ASP_01   (0x00000100)
#define USB_CMD_ASP_10   (0x00000200)
#define USB_CMD_ASP_11   (0x00000300)
#define USB_CMD_ASP_BIT_POS   (8)
#define USB_CMD_ASYNC_SCH_PARK_EN   (0x00000800)
#define USB_CMD_ASYNC_SCHEDULE_EN   (0x00000020)
#define USB_CMD_ATDTW   (0x00004000)
#define USB_CMD_CTRL_RESET   (0x00000002)
#define USB_CMD_FRAME_SIZE_1024   (0x00000000)
#define USB_CMD_FRAME_SIZE_128   (0x0000000C)
#define USB_CMD_FRAME_SIZE_16   (0x00008008)
#define USB_CMD_FRAME_SIZE_256   (0x00000008)
#define USB_CMD_FRAME_SIZE_32   (0x00008004)
#define USB_CMD_FRAME_SIZE_512   (0x00000004)
#define USB_CMD_FRAME_SIZE_64   (0x00008000)
#define USB_CMD_FRAME_SIZE_8   (0x0000800C)
#define USB_CMD_INT_AA_DOORBELL   (0x00000040)
#define USB_CMD_ITC   (0x00FF0000)
#define USB_CMD_ITC_16_MICRO_FRM   (0x00100000)
#define USB_CMD_ITC_1_MICRO_FRM   (0x00010000)
#define USB_CMD_ITC_2_MICRO_FRM   (0x00020000)
#define USB_CMD_ITC_32_MICRO_FRM   (0x00200000)
#define USB_CMD_ITC_4_MICRO_FRM   (0x00040000)
#define USB_CMD_ITC_64_MICRO_FRM   (0x00400000)
#define USB_CMD_ITC_8_MICRO_FRM   (0x00080000)
#define USB_CMD_ITC_BIT_POS   (16)
#define USB_CMD_ITC_NO_THRESHOLD   (0x00000000)
#define USB_CMD_PERIODIC_SCHEDULE_EN   (0x00000010)
#define USB_CMD_RUN_STOP   (0x00000001)
#define USB_CMD_SUTW   (0x00002000)
#define USB_CTRL_IOENB   (0x00000004)
#define USB_CTRL_OTG_IWUE   (0x00100000)
#define USB_CTRL_OTG_VWUE   (0x00001000)
#define USB_CTRL_OTG_WUIE   (0x08000000)
#define USB_CTRL_OTG_WUIR   (0x80000000)
#define USB_CTRL_ULPI_INT0EN   (0x00000001)
#define USB_DEVICE_ADDRESS_BIT_POS   (25)
#define USB_DEVICE_ADDRESS_MASK   (0xFE000000)
#define USB_DR_OFFSET   0x3100
#define USB_DR_SYS_OFFSET   0x400
#define USB_EP_LIST_ADDRESS_MASK   (0xfffff800)
#define USB_FRINDEX_MASKS   (0x3fff)
#define USB_INTR_ASYN_ADV_EN   (0x00000020)
#define USB_INTR_DEVICE_SUSPEND   (0x00000100)
#define USB_INTR_ERR_INT_EN   (0x00000002)
#define USB_INTR_FRM_LST_ROLL_EN   (0x00000008)
#define USB_INTR_INT_EN   (0x00000001)
#define USB_INTR_PTC_DETECT_EN   (0x00000004)
#define USB_INTR_RESET_EN   (0x00000040)
#define USB_INTR_SOF_EN   (0x00000080)
#define USB_INTR_SYS_ERR_EN   (0x00000010)
#define USB_IRAM_BASE_ADDR   0
#define USB_MAX_CTRL_PAYLOAD   64
#define USB_MAX_ENDPOINTS   8
#define USB_MAX_PIPES   (USB_MAX_ENDPOINTS*2)
#define USB_MODE_CTRL_MODE_DEVICE   (0x00000002)
#define USB_MODE_CTRL_MODE_HOST   (0x00000003)
#define USB_MODE_CTRL_MODE_IDLE   (0x00000000)
#define USB_MODE_CTRL_MODE_MASK   0x00000003
#define USB_MODE_CTRL_MODE_RSV   (0x00000001)
#define USB_MODE_ES   0x00000004
#define USB_MODE_SETUP_LOCK_OFF   (0x00000008)
#define USB_MODE_STREAM_DISABLE   (0x00000010)
#define USB_RECV   (0)
#define USB_SEND   (1)
#define USB_STS_ASYNC_SCHEDULE   (0x00008000)
#define USB_STS_ERR   (0x00000002)
#define USB_STS_FRM_LST_ROLL   (0x00000008)
#define USB_STS_HC_HALTED   (0x00001000)
#define USB_STS_IAA   (0x00000020)
#define USB_STS_INT   (0x00000001)
#define USB_STS_PERIODIC_SCHEDULE   (0x00004000)
#define USB_STS_PORT_CHANGE   (0x00000004)
#define USB_STS_RCL   (0x00002000)
#define USB_STS_RESET   (0x00000040)
#define USB_STS_SOF   (0x00000080)
#define USB_STS_SUSPEND   (0x00000100)
#define USB_STS_SYS_ERR   (0x00000010)
#define USB_UH2_OIDWK_EN   (1 << 5)
#define USB_UH2_OVBWK_EN   (1 << 6)
#define USE_MSC_WR(len)   false
#define VDBG(stuff...)   do {} while (0)
#define WAIT_FOR_OUT_STATUS   3
#define WAIT_FOR_SETUP   0

Enumerations

enum  e_PhyInterface { e_ULPI, e_UTMI_8BIT, e_UTMI_16BIT, e_SERIAL }


Generated by  Doxygen 1.6.0   Back to index