patch-2.3.43 linux/drivers/usb/usb-uhci.h
Next file: linux/drivers/usb/usb.c
Previous file: linux/drivers/usb/usb-uhci.c
Back to the patch index
Back to the overall index
- Lines: 60
- Date:
Mon Feb 7 19:15:59 2000
- Orig file:
v2.3.42/linux/drivers/usb/usb-uhci.h
- Orig date:
Fri Jan 28 15:09:08 2000
diff -u --recursive --new-file v2.3.42/linux/drivers/usb/usb-uhci.h linux/drivers/usb/usb-uhci.h
@@ -2,10 +2,21 @@
#define __LINUX_UHCI_H
/*
- $Id: usb-uhci.h,v 1.31 2000/01/15 22:02:30 acher Exp $
+ $Id: usb-uhci.h,v 1.39 2000/02/05 20:25:27 acher Exp $
*/
#define MODNAME "usb-uhci"
-#define VERSTR "version v1.169 time " __TIME__ " " __DATE__
+#define VERSTR "version v1.184 time " __TIME__ " " __DATE__
+
+static __inline__ void uhci_wait_ms(unsigned int ms)
+{
+ if(!in_interrupt())
+ {
+ current->state = TASK_UNINTERRUPTIBLE;
+ schedule_timeout(1 + ms * HZ / 1000);
+ }
+ else
+ mdelay(ms);
+}
/* Command register */
#define USBCMD 0
@@ -56,6 +67,7 @@
#define USBLEGSUP_DEFAULT 0x2000 /* only PIRQ enable set */
#define UHCI_NULL_DATA_SIZE 0x7ff /* for UHCI controller TD */
+#define UHCI_PID 0xff /* PID MASK */
#define UHCI_PTR_BITS 0x000F
#define UHCI_PTR_TERM 0x0001
@@ -137,6 +149,7 @@
struct list_head horizontal;
struct list_head vertical;
struct list_head desc_list;
+ int last_used;
} uhci_desc_t, *puhci_desc_t;
typedef struct {
@@ -170,16 +183,17 @@
spinlock_t urb_list_lock; // lock to keep consistency
+ int unlink_urb_done;
+
struct usb_bus *bus; // our bus
- spinlock_t unlink_urb_lock; // lock for unlink_urb
-
__u32 *framelist;
uhci_desc_t **iso_td;
uhci_desc_t *int_chain[8];
uhci_desc_t *control_chain;
uhci_desc_t *bulk_chain;
uhci_desc_t *chain_end;
+ struct list_head free_desc;
spinlock_t qh_lock;
spinlock_t td_lock;
struct virt_root_hub rh; //private data of the virtual root hub
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)