Hi Randy, Thanks for the feedback! Yes, part of the idea of having some shared api like this is that other people _can_ share work in this area.
Looks like some people could have much fun with PXA-250 based PDAs, they have fifteen endpoints! It ought to be easy to make the rocker switches show up in a HID control, affecting the audio and video streams, yes? :)
+ * (3) The hardware driver can now start enumerating. The steps it handles + * are to accept USB power and USB device address. Other steps are handled + * by the gadget driver. You mean accept USB device address when the host does set_address()?
Yes. Doesn't matter to the gadget driver at all, and they can infer that an address was set (and speed negotiated) when they start getting requests for the relevant device and config descriptors. Every other setup call matters to the gadget driver, setting the address is an exception.
+/** + * usb_set_halt - set or clear the endpoint halt feature. + * @ep: the bulk or interrupt endpoint being stalled or cleared + * @is_halted: nonzero value sets the feature, zero clears it. + * + * when a driver (or host) stalls an endpoint, it stays stalled until the + * host issues request to clear the endpoint halt feature, or the endpoint + * is disabled. + * + * returns zero, or a negative error code. + */ +static inline int +usb_ep_set_halt (struct usb_ep *ep, int is_halted) This function name sounds like it _sets_ is_halted (i.e., to 1). Maybe usb_set_halt_state() instead?
Setting the state flag (ep->is_halted) is a side effect, it primarily sets whatever hardware state means "halted". I'll clarify that description a bit. Drivers need to manage this, since they stall endpoints to indicate some kinds of errors (and un-stalling means certain state is now cleaned up).
+ * usb_set_enable_sof - enables or disables start-of-frame callbacks + * + * this may be of the most interest to isochronous drivers; it arranges + * to call the driver's sof callback at the start of every frame except + * when the device has suspended. + * + * returns zero on success, else negative error code + */ +static inline int usb_set_enable_sof (struct usb_gadget *gadget, int do_call) Likewise, sounds like it enables SOF callback, not sets the state of it.
Enables or disables, yes -- like enabling or disabling the bits controlling a SOF interrupt. I'm not sure what naming convention you'd use here, this is one I've seen. I'm not sure how often drivers will really use this particular feature, but some hardware does support it. - Dave ------------------------------------------------------- This SF.net email is sponsored by: The Sourceforge Network Survey Take Our Survey and You Could Win a $500 Gift Certificate! http://ugamsolutions.com/psurvey/osdn/SourceForge/index_sourceforge.htm _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
