6
void ohci_init(void *data);
7
int ohci_control(u32 endp, int dir, const void *cmd, int cmdsize
8
, void *data, int datasize);
9
struct usb_pipe *ohci_alloc_intr_pipe(u32 endp, int period);
10
int ohci_poll_intr(struct usb_pipe *pipe, void *data);
13
/****************************************************************
14
* ohci structs and flags
15
****************************************************************/
24
#define ED_ISO (1 << 15)
25
#define ED_SKIP (1 << 14)
26
#define ED_LOWSPEED (1 << 13)
27
#define ED_OUT (0x01 << 11)
28
#define ED_IN (0x02 << 11)
40
#define TD_CC 0xf0000000
41
#define TD_CC_GET(td_p) ((td_p >>28) & 0x0f)
42
#define TD_DI 0x00E00000
44
#define TD_DONE 0x00020000
45
#define TD_ISO 0x00010000
47
#define TD_EC 0x0C000000
48
#define TD_T 0x03000000
49
#define TD_T_DATA0 0x02000000
50
#define TD_T_DATA1 0x03000000
51
#define TD_T_TOGGLE 0x00000000
52
#define TD_DP 0x00180000
53
#define TD_DP_SETUP 0x00000000
54
#define TD_DP_IN 0x00100000
55
#define TD_DP_OUT 0x00080000
57
#define TD_R 0x00040000
77
u32 ed_controlcurrent;
91
u32 roothub_portstatus[15];
94
#define OHCI_CTRL_CBSR (3 << 0)
95
#define OHCI_CTRL_PLE (1 << 2)
96
#define OHCI_CTRL_CLE (1 << 4)
97
#define OHCI_CTRL_HCFS (3 << 6)
98
# define OHCI_USB_RESET (0 << 6)
99
# define OHCI_USB_OPER (2 << 6)
100
#define OHCI_CTRL_RWC (1 << 9)
102
#define OHCI_HCR (1 << 0)
103
#define OHCI_CLF (1 << 1)
105
#define OHCI_INTR_MIE (1 << 31)
107
#define RH_PS_CCS 0x00000001
108
#define RH_PS_PES 0x00000002
109
#define RH_PS_PSS 0x00000004
110
#define RH_PS_POCI 0x00000008
111
#define RH_PS_PRS 0x00000010
112
#define RH_PS_PPS 0x00000100
113
#define RH_PS_LSDA 0x00000200
114
#define RH_PS_CSC 0x00010000
115
#define RH_PS_PESC 0x00020000
116
#define RH_PS_PSSC 0x00040000
117
#define RH_PS_OCIC 0x00080000
118
#define RH_PS_PRSC 0x00100000
120
#define RH_HS_LPS 0x00000001
121
#define RH_HS_OCI 0x00000002
122
#define RH_HS_DRWE 0x00008000
123
#define RH_HS_LPSC 0x00010000
124
#define RH_HS_OCIC 0x00020000
125
#define RH_HS_CRWE 0x80000000
127
#define RH_B_DR 0x0000ffff
128
#define RH_B_PPCM 0xffff0000
130
#define RH_A_NDP (0xff << 0)
131
#define RH_A_PSM (1 << 8)
132
#define RH_A_NPS (1 << 9)
133
#define RH_A_DT (1 << 10)
134
#define RH_A_OCPM (1 << 11)
135
#define RH_A_NOCP (1 << 12)
136
#define RH_A_POTPGT (0xff << 24)