Lines Matching defs:frame

74 #define	FUSBH200_TUNE_FLS		1	/* (medium) 512-frame schedule */
167 label, itd->frame, itd, hc32_to_cpu(fusbh200, itd->hw_next),
3400 static void periodic_unlink (struct fusbh200_hcd *fusbh200, unsigned frame, void *ptr)
3402 union fusbh200_shadow *prev_p = &fusbh200->pshadow[frame];
3403 __hc32 *hw_p = &fusbh200->periodic[frame];
3430 periodic_usecs (struct fusbh200_hcd *fusbh200, unsigned frame, unsigned uframe)
3432 __hc32 *hw_p = &fusbh200->periodic [frame];
3433 union fusbh200_shadow *q = &fusbh200->pshadow [frame];
3454 * bandwidth from the previous frame
3472 frame * 8 + uframe, usecs);
3491 * for a periodic transfer starting at the specified frame, using
3498 unsigned frame,
3509 for (; frame < fusbh200->periodic_size; frame += period) {
3514 here = fusbh200->pshadow [frame];
3515 type = Q_NEXT_TYPE(fusbh200, fusbh200->periodic [frame]);
3540 "periodic frame %d bogus type %d\n",
3541 frame, type);
3660 * waiting at least one frame, as described in EHCI 4.12.2.5.
3774 unsigned frame,
3781 /* complete split running into next frame?
3796 claimed = periodic_usecs (fusbh200, frame, uframe);
3800 } while ((frame += 1) < fusbh200->periodic_size);
3805 claimed = periodic_usecs (fusbh200, frame, uframe);
3808 } while ((frame += period) < fusbh200->periodic_size);
3817 unsigned frame,
3829 if (!check_period (fusbh200, frame, uframe, qh->period, qh->usecs))
3848 if (tt_no_collision (fusbh200, qh->period, qh->dev, frame, mask)) {
3849 if (!check_period (fusbh200, frame, uframe + qh->gap_uf + 1,
3852 if (!check_period (fusbh200, frame, uframe + qh->gap_uf,
3869 unsigned frame; /* 0..(qh->period - 1), or NO_FRAME */
3874 frame = qh->start;
3877 if (frame < qh->period) {
3879 status = check_intr_schedule (fusbh200, frame, --uframe,
3896 frame = ++fusbh200->random_frame % qh->period;
3899 frame, uframe, qh,
3908 frame = 0;
3913 qh->start = frame;
3915 /* reset S-frame and (maybe) C-frame masks */
4069 /* usbfs wants to report the average usecs per frame tied up
4239 if (itd->frame == fusbh200->now_frame)
4365 /* need to schedule; when's the next (u)frame we could start?
4482 itd_link (struct fusbh200_hcd *fusbh200, unsigned frame, struct fusbh200_itd *itd)
4484 union fusbh200_shadow *prev = &fusbh200->pshadow[frame];
4485 __hc32 *hw_p = &fusbh200->periodic[frame];
4502 itd->frame = frame;
4516 unsigned next_uframe, uframe, frame;
4550 frame = next_uframe >> 3;
4559 if (((next_uframe >> 3) != frame)
4561 itd_link(fusbh200, frame & (fusbh200->periodic_size - 1), itd);
4583 * assuming (a) no more than two urbs per frame on this endpoint, and also
4742 unsigned uf, now_frame, frame;
4761 frame = fusbh200->next_frame;
4767 /* scan each element in frame's queue for completions */
4768 q_p = &fusbh200->pshadow [frame];
4769 hw_p = &fusbh200->periodic [frame];
4780 * frame is current.
4782 if (frame == now_frame && live) {
4812 fusbh200_dbg(fusbh200, "corrupt type %d frame %d shadow %p\n",
4813 type, frame, q.ptr);
4828 /* Stop when we have reached the current frame */
4829 if (frame == now_frame)
4831 frame = (frame + 1) & fmask;
4858 unsigned frame, uframe;
4889 for (frame = 0; frame < fusbh200->periodic_size; ++frame)
4892 periodic_usecs (fusbh200, frame, uframe));
5093 * hw default: 1K periodic list heads, one per frame.