diff options
| author | Tony Luck <tony.luck@intel.com> | 2005-06-06 15:42:07 -0700 |
|---|---|---|
| committer | Tony Luck <tony.luck@intel.com> | 2005-06-06 15:42:07 -0700 |
| commit | 26abd53d8e9e51bbeea0b4772e8dffece3eeff38 (patch) | |
| tree | d9dc6f45c9142e6a8f58f1aa8fc75e66f9edd0e9 /include/linux/usb.h | |
| parent | ff89bf3bc0534aa03b5375aa906544d96911bad4 (diff) | |
| parent | 8f5bb0438b86d1a5393176ceeec2836fd469edf8 (diff) | |
auto merge with /home/aegl/GIT/linus
Diffstat (limited to 'include/linux/usb.h')
| -rw-r--r-- | include/linux/usb.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/usb.h b/include/linux/usb.h index 41d1a644c9d4..2d1ac5058534 100644 --- a/include/linux/usb.h +++ b/include/linux/usb.h @@ -796,6 +796,10 @@ typedef void (*usb_complete_t)(struct urb *, struct pt_regs *); * of the iso_frame_desc array, and the number of errors is reported in * error_count. Completion callbacks for ISO transfers will normally * (re)submit URBs to ensure a constant transfer rate. + * + * Note that even fields marked "public" should not be touched by the driver + * when the urb is owned by the hcd, that is, since the call to + * usb_submit_urb() till the entry into the completion routine. */ struct urb { @@ -803,12 +807,12 @@ struct urb struct kref kref; /* reference count of the URB */ spinlock_t lock; /* lock for the URB */ void *hcpriv; /* private data for host controller */ - struct list_head urb_list; /* list pointer to all active urbs */ int bandwidth; /* bandwidth for INT/ISO request */ atomic_t use_count; /* concurrent submissions counter */ u8 reject; /* submissions will fail */ /* public, documented fields in the urb that can be used by drivers */ + struct list_head urb_list; /* list head for use by the urb owner */ struct usb_device *dev; /* (in) pointer to associated device */ unsigned int pipe; /* (in) pipe information */ int status; /* (return) non-ISO status */ |
