Lines Matching refs:ed
150 struct ed *ed; in ohci_urb_enqueue() local
158 ed = ed_get(ohci, urb->ep, urb->dev, pipe, urb->interval); in ohci_urb_enqueue()
159 if (! ed) in ohci_urb_enqueue()
163 switch (ed->type) { in ohci_urb_enqueue()
197 urb_priv->ed = ed; in ohci_urb_enqueue()
225 if (ed->state == ED_IDLE) { in ohci_urb_enqueue()
226 retval = ed_schedule (ohci, ed); in ohci_urb_enqueue()
239 list_add(&ed->in_use_list, &ohci->eds_in_use); in ohci_urb_enqueue()
241 if (ed->type == PIPE_ISOCHRONOUS) { in ohci_urb_enqueue()
245 frame += max_t (u16, 8, ed->interval); in ohci_urb_enqueue()
246 frame &= ~(ed->interval - 1); in ohci_urb_enqueue()
247 frame |= ed->branch; in ohci_urb_enqueue()
249 ed->last_iso = frame + ed->interval * (size - 1); in ohci_urb_enqueue()
251 } else if (ed->type == PIPE_ISOCHRONOUS) { in ohci_urb_enqueue()
253 u16 frame = ed->last_iso + ed->interval; in ohci_urb_enqueue()
254 u16 length = ed->interval * (size - 1); in ohci_urb_enqueue()
261 frame += (next - frame + ed->interval - 1) & in ohci_urb_enqueue()
262 -ed->interval; in ohci_urb_enqueue()
278 ed->interval); in ohci_urb_enqueue()
288 ed->last_iso = frame + length; in ohci_urb_enqueue()
327 if (urb_priv->ed->state == ED_OPER) in ohci_urb_dequeue()
328 start_ed_unlink(ohci, urb_priv->ed); in ohci_urb_dequeue()
350 struct ed *ed = ep->hcpriv; in ohci_endpoint_disable() local
356 if (!ed) in ohci_endpoint_disable()
364 ed->state = ED_IDLE; in ohci_endpoint_disable()
368 switch (ed->state) { in ohci_endpoint_disable()
379 if (list_empty (&ed->td_list)) { in ohci_endpoint_disable()
380 td_free (ohci, ed->dummy); in ohci_endpoint_disable()
381 ed_free (ohci, ed); in ohci_endpoint_disable()
390 ed, ep->desc.bEndpointAddress, ed->state, in ohci_endpoint_disable()
391 list_empty (&ed->td_list) ? "" : " (has tds)"); in ohci_endpoint_disable()
392 td_free (ohci, ed->dummy); in ohci_endpoint_disable()
745 struct ed *ed; in io_watchdog_func() local
775 list_for_each_entry(ed, &ohci->eds_in_use, in_use_list) { in io_watchdog_func()
776 if (ed->pending_td) { in io_watchdog_func()
778 OKAY_TO_TAKEBACK(ohci, ed)) { in io_watchdog_func()
779 unsigned tmp = hc32_to_cpu(ohci, ed->hwINFO); in io_watchdog_func()
785 add_to_done_list(ohci, ed->pending_td); in io_watchdog_func()
790 td = ed->pending_td; in io_watchdog_func()
794 list_for_each_entry(td_next, &ed->td_list, td_list) { in io_watchdog_func()
802 head = hc32_to_cpu(ohci, ACCESS_ONCE(ed->hwHeadP)) & TD_MASK; in io_watchdog_func()
804 td_next = list_prepare_entry(td, &ed->td_list, td_list); in io_watchdog_func()
805 list_for_each_entry_continue(td_next, &ed->td_list, td_list) { in io_watchdog_func()
816 ed->takeback_wdh_cnt = ohci->wdh_cnt + 2; in io_watchdog_func()
817 ed->pending_td = td; in io_watchdog_func()
1030 struct ed *ed = priv->ed; in ohci_restart() local
1032 switch (ed->state) { in ohci_restart()
1034 ed->state = ED_UNLINK; in ohci_restart()
1035 ed->hwINFO |= cpu_to_hc32(ohci, ED_DEQUEUE); in ohci_restart()
1036 ed_deschedule (ohci, ed); in ohci_restart()
1038 ed->ed_next = ohci->ed_rm_list; in ohci_restart()
1039 ed->ed_prev = NULL; in ohci_restart()
1040 ohci->ed_rm_list = ed; in ohci_restart()
1046 ed, ed->state); in ohci_restart()
1281 sizeof (struct ed), sizeof (struct td)); in ohci_hcd_mod_init()