Name

usb_claim_bandwidth — records bandwidth for a periodic transfer

Synopsis

void usb_claim_bandwidth (struct usb_device *  dev,
 struct urb *  urb,
 int  bustime,
 int  isoc);

Arguments

dev

source/target of request

urb

request (urb->dev == dev)

bustime

bandwidth consumed, in (average) microseconds per frame

isoc

true iff the request is isochronous

Description

Bus bandwidth reservations are recorded purely for diagnostic purposes. HCDs are expected not to overcommit periodic bandwidth, and to record such reservations whenever endpoints are added to the periodic schedule.

FIXME averaging per-frame is suboptimal. Better to sum over the HCD's entire periodic schedule ... 32 frames for OHCI, 1024 for UHCI, settable for EHCI (256/512/1024 frames, default 1024) and have the bus expose how large its periodic schedule is.