Lines Matching refs:ed
153 struct ed *ed; in ohci_urb_enqueue() local
161 ed = ed_get(ohci, urb->ep, urb->dev, pipe, urb->interval); in ohci_urb_enqueue()
162 if (! ed) in ohci_urb_enqueue()
166 switch (ed->type) { in ohci_urb_enqueue()
199 urb_priv->ed = ed; in ohci_urb_enqueue()
227 if (ed->state == ED_IDLE) { in ohci_urb_enqueue()
228 retval = ed_schedule (ohci, ed); in ohci_urb_enqueue()
242 list_add(&ed->in_use_list, &ohci->eds_in_use); in ohci_urb_enqueue()
244 if (ed->type == PIPE_ISOCHRONOUS) { in ohci_urb_enqueue()
248 frame += max_t (u16, 8, ed->interval); in ohci_urb_enqueue()
249 frame &= ~(ed->interval - 1); in ohci_urb_enqueue()
250 frame |= ed->branch; in ohci_urb_enqueue()
252 ed->last_iso = frame + ed->interval * (size - 1); in ohci_urb_enqueue()
254 } else if (ed->type == PIPE_ISOCHRONOUS) { in ohci_urb_enqueue()
256 u16 frame = ed->last_iso + ed->interval; in ohci_urb_enqueue()
257 u16 length = ed->interval * (size - 1); in ohci_urb_enqueue()
264 frame += (next - frame + ed->interval - 1) & in ohci_urb_enqueue()
265 -ed->interval; in ohci_urb_enqueue()
281 ed->interval); in ohci_urb_enqueue()
291 ed->last_iso = frame + length; in ohci_urb_enqueue()
330 if (urb_priv->ed->state == ED_OPER) in ohci_urb_dequeue()
331 start_ed_unlink(ohci, urb_priv->ed); in ohci_urb_dequeue()
353 struct ed *ed = ep->hcpriv; in ohci_endpoint_disable() local
359 if (!ed) in ohci_endpoint_disable()
367 ed->state = ED_IDLE; in ohci_endpoint_disable()
371 switch (ed->state) { in ohci_endpoint_disable()
382 if (list_empty (&ed->td_list)) { in ohci_endpoint_disable()
383 td_free (ohci, ed->dummy); in ohci_endpoint_disable()
384 ed_free (ohci, ed); in ohci_endpoint_disable()
393 ed, ep->desc.bEndpointAddress, ed->state, in ohci_endpoint_disable()
394 list_empty (&ed->td_list) ? "" : " (has tds)"); in ohci_endpoint_disable()
395 td_free (ohci, ed->dummy); in ohci_endpoint_disable()
754 struct ed *ed; in io_watchdog_func() local
784 list_for_each_entry(ed, &ohci->eds_in_use, in_use_list) { in io_watchdog_func()
785 if (ed->pending_td) { in io_watchdog_func()
787 OKAY_TO_TAKEBACK(ohci, ed)) { in io_watchdog_func()
788 unsigned tmp = hc32_to_cpu(ohci, ed->hwINFO); in io_watchdog_func()
794 add_to_done_list(ohci, ed->pending_td); in io_watchdog_func()
799 td = ed->pending_td; in io_watchdog_func()
803 list_for_each_entry(td_next, &ed->td_list, td_list) { in io_watchdog_func()
811 head = hc32_to_cpu(ohci, READ_ONCE(ed->hwHeadP)) & TD_MASK; in io_watchdog_func()
813 td_next = list_prepare_entry(td, &ed->td_list, td_list); in io_watchdog_func()
814 list_for_each_entry_continue(td_next, &ed->td_list, td_list) { in io_watchdog_func()
825 ed->takeback_wdh_cnt = ohci->wdh_cnt + 2; in io_watchdog_func()
826 ed->pending_td = td; in io_watchdog_func()
1046 struct ed *ed = priv->ed; in ohci_restart() local
1048 switch (ed->state) { in ohci_restart()
1050 ed->state = ED_UNLINK; in ohci_restart()
1051 ed->hwINFO |= cpu_to_hc32(ohci, ED_DEQUEUE); in ohci_restart()
1052 ed_deschedule (ohci, ed); in ohci_restart()
1054 ed->ed_next = ohci->ed_rm_list; in ohci_restart()
1055 ed->ed_prev = NULL; in ohci_restart()
1056 ohci->ed_rm_list = ed; in ohci_restart()
1062 ed, ed->state); in ohci_restart()
1282 sizeof (struct ed), sizeof (struct td)); in ohci_hcd_mod_init()