Hi all,

In looking at the typedefs in usb.h I found devrequest.  That's a pretty
generic name for a USB specific typedef :)

So here's a patch against 2.5.2-pre7 that renames the devrequest typedef
to "struct usb_devrequest", adds some documentation for the structure,
and changes all in kernel usages of the devrequest structure.

Does anyone have any problems with this patch?

thanks,

greg k-h
diff -Nru a/arch/cris/drivers/usb-host.c b/arch/cris/drivers/usb-host.c
--- a/arch/cris/drivers/usb-host.c      Fri Jan  4 17:11:57 2002
+++ b/arch/cris/drivers/usb-host.c      Fri Jan  4 17:11:57 2002
@@ -1981,7 +1981,7 @@
        struct usb_device *usb_dev = urb->dev;
        etrax_hc_t *hc = usb_dev->bus->hcpriv;
        unsigned int pipe = urb->pipe;
-       devrequest *cmd = (devrequest *) urb->setup_packet;
+       struct usb_devrequest *cmd = (struct usb_devrequest *) urb->setup_packet;
        void *data = urb->transfer_buffer;
        int leni = urb->transfer_buffer_length;
        int len = 0;
diff -Nru a/drivers/bluetooth/hci_usb.c b/drivers/bluetooth/hci_usb.c
--- a/drivers/bluetooth/hci_usb.c       Fri Jan  4 17:11:57 2002
+++ b/drivers/bluetooth/hci_usb.c       Fri Jan  4 17:11:57 2002
@@ -437,7 +437,7 @@
 static int hci_usb_ctrl_msg(struct hci_usb *husb, struct sk_buff *skb)
 {
        struct urb *urb = husb->ctrl_urb;
-       devrequest *dr  = &husb->dev_req;
+       struct usb_devrequest *dr  = &husb->dev_req;
        int pipe, status;
 
        DBG("%s len %d", husb->hdev.name, skb->len);
diff -Nru a/drivers/char/joystick/iforce.c b/drivers/char/joystick/iforce.c
--- a/drivers/char/joystick/iforce.c    Fri Jan  4 17:11:57 2002
+++ b/drivers/char/joystick/iforce.c    Fri Jan  4 17:11:57 2002
@@ -134,7 +134,7 @@
 #ifdef IFORCE_USB
        struct usb_device *usbdev;      /* USB transfer */
        struct urb irq, out, ctrl;
-       devrequest dr;
+       struct usb_devrequest dr;
 #endif
                                        /* Force Feedback */
        wait_queue_head_t wait;
diff -Nru a/drivers/isdn/hisax/st5481.h b/drivers/isdn/hisax/st5481.h
--- a/drivers/isdn/hisax/st5481.h       Fri Jan  4 17:11:57 2002
+++ b/drivers/isdn/hisax/st5481.h       Fri Jan  4 17:11:57 2002
@@ -309,7 +309,7 @@
 typedef void (*ctrl_complete_t)(void *);
 
 typedef struct ctrl_msg {
-       devrequest dr;
+       struct usb_devrequest dr;
        ctrl_complete_t complete;
        void *context;
 } ctrl_msg; 
diff -Nru a/drivers/usb/acm.c b/drivers/usb/acm.c
--- a/drivers/usb/acm.c Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/acm.c Fri Jan  4 17:11:57 2002
@@ -184,7 +184,7 @@
 static void acm_ctrl_irq(struct urb *urb)
 {
        struct acm *acm = urb->context;
-       devrequest *dr = urb->transfer_buffer;
+       struct usb_devrequest *dr = urb->transfer_buffer;
        unsigned char *data = (unsigned char *)(dr + 1);
        int newctrl;
 
diff -Nru a/drivers/usb/bluetooth.c b/drivers/usb/bluetooth.c
--- a/drivers/usb/bluetooth.c   Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/bluetooth.c   Fri Jan  4 17:11:57 2002
@@ -179,7 +179,7 @@
        
        __u8                    control_out_bInterfaceNum;
        struct urb *            control_urb_pool[NUM_CONTROL_URBS];
-       devrequest              dr[NUM_CONTROL_URBS];
+       struct usb_devrequest   dr[NUM_CONTROL_URBS];
 
        unsigned char *         interrupt_in_buffer;
        struct urb *            interrupt_in_urb;
@@ -288,7 +288,7 @@
 static int bluetooth_ctrl_msg (struct usb_bluetooth *bluetooth, int request, int 
value, const unsigned char *buf, int len)
 {
        struct urb *urb = NULL;
-       devrequest *dr = NULL;
+       struct usb_devrequest *dr = NULL;
        int i;
        int status;
 
diff -Nru a/drivers/usb/catc.c b/drivers/usb/catc.c
--- a/drivers/usb/catc.c        Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/catc.c        Fri Jan  4 17:11:57 2002
@@ -159,7 +159,7 @@
        u8 rx_buf[RX_MAX_BURST * (PKT_SZ + 2)];
        u8 irq_buf[2];
        u8 ctrl_buf[64];
-       devrequest ctrl_dr;
+       struct usb_devrequest ctrl_dr;
 
        struct timer_list timer;
        u8 stats_buf[8];
@@ -383,7 +383,7 @@
        struct ctrl_queue *q = catc->ctrl_queue + catc->ctrl_tail;
        struct usb_device *usbdev = catc->usbdev;
        struct urb *urb = &catc->ctrl_urb;
-       devrequest *dr = &catc->ctrl_dr;
+       struct usb_devrequest *dr = &catc->ctrl_dr;
        int status;
 
        dr->request = q->request;
diff -Nru a/drivers/usb/devio.c b/drivers/usb/devio.c
--- a/drivers/usb/devio.c       Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/devio.c       Fri Jan  4 17:11:57 2002
@@ -757,7 +757,7 @@
        struct usbdevfs_iso_packet_desc *isopkt = NULL;
        struct usb_endpoint_descriptor *ep_desc;
        struct async *as;
-       devrequest *dr = NULL;
+       struct usb_devrequest *dr = NULL;
        unsigned int u, totlen, isofrmlen;
        int ret;
 
@@ -787,7 +787,7 @@
                /* min 8 byte setup packet, max arbitrary */
                if (uurb.buffer_length < 8 || uurb.buffer_length > PAGE_SIZE)
                        return -EINVAL;
-               if (!(dr = kmalloc(sizeof(devrequest), GFP_KERNEL)))
+               if (!(dr = kmalloc(sizeof(struct usb_devrequest), GFP_KERNEL)))
                        return -ENOMEM;
                if (copy_from_user(dr, (unsigned char*)uurb.buffer, 8)) {
                        kfree(dr);
diff -Nru a/drivers/usb/hcd/ehci-q.c b/drivers/usb/hcd/ehci-q.c
--- a/drivers/usb/hcd/ehci-q.c  Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/hcd/ehci-q.c  Fri Jan  4 17:11:57 2002
@@ -362,7 +362,7 @@
                /* SETUP for control urb? */
                if (unlikely (QTD_PID (token) == 2))
                        pci_unmap_single (ehci->hcd.pdev,
-                               qtd->buf_dma, sizeof (devrequest),
+                               qtd->buf_dma, sizeof (struct usb_devrequest),
                                PCI_DMA_TODEVICE);
 
                /* another queued urb? */
@@ -443,13 +443,13 @@
                qtd->buf_dma = pci_map_single (
                                        ehci->hcd.pdev,
                                        urb->setup_packet,
-                                       sizeof (devrequest),
+                                       sizeof (struct usb_devrequest),
                                        PCI_DMA_TODEVICE);
                if (unlikely (!qtd->buf_dma))
                        goto cleanup;
 
                /* SETUP pid */
-               qtd_fill (qtd, qtd->buf_dma, sizeof (devrequest),
+               qtd_fill (qtd, qtd->buf_dma, sizeof (struct usb_devrequest),
                        token | (2 /* "setup" */ << 8));
 
                /* ... and always at least one more pid */
diff -Nru a/drivers/usb/hcd.c b/drivers/usb/hcd.c
--- a/drivers/usb/hcd.c Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/hcd.c Fri Jan  4 17:11:57 2002
@@ -268,7 +268,7 @@
 /* Root hub control transfers execute synchronously */
 static int rh_call_control (struct usb_hcd *hcd, struct urb *urb)
 {
-       devrequest      *cmd = (devrequest *) urb->setup_packet;
+       struct usb_devrequest *cmd = (struct usb_devrequest *) urb->setup_packet;
        u16             typeReq, wValue, wIndex, wLength;
        const u8        *bufp = 0;
        u8              *ubuf = urb->transfer_buffer;
diff -Nru a/drivers/usb/hid.h b/drivers/usb/hid.h
--- a/drivers/usb/hid.h Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/hid.h Fri Jan  4 17:11:57 2002
@@ -367,7 +367,7 @@
 #define HID_CONTROL_FIFO_SIZE  8
 
 struct hid_control_fifo {
-       devrequest dr;
+       struct usb_devrequest dr;
        char buffer[HID_BUFFER_SIZE];
 };
 
diff -Nru a/drivers/usb/kaweth.c b/drivers/usb/kaweth.c
--- a/drivers/usb/kaweth.c      Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/kaweth.c      Fri Jan  4 17:11:57 2002
@@ -110,7 +110,7 @@
        );
 static void kaweth_disconnect(struct usb_device *dev, void *ptr);
 int kaweth_internal_control_msg(struct usb_device *usb_dev, unsigned int pipe,
-                               devrequest *cmd, void *data, int len,
+                               struct usb_devrequest *cmd, void *data, int len,
                                int timeout);
 
 /****************************************************************
@@ -229,7 +229,7 @@
                          __u16 size, 
                          int timeout)
 {
-       devrequest *dr;
+       struct usb_devrequest *dr;
 
        kaweth_dbg("kaweth_control()");
 
@@ -238,7 +238,7 @@
                return -EBUSY;
        }
 
-       dr = kmalloc(sizeof(devrequest), 
+       dr = kmalloc(sizeof(struct usb_devrequest), 
                      in_interrupt() ? GFP_ATOMIC : GFP_KERNEL);
 
        if(!dr)
@@ -1015,7 +1015,7 @@
 /*-------------------------------------------------------------------*/
 // returns status (negative) or length (positive)
 int kaweth_internal_control_msg(struct usb_device *usb_dev, unsigned int pipe,
-                            devrequest *cmd,  void *data, int len, int timeout)
+                            struct usb_devrequest *cmd,  void *data, int len, int 
+timeout)
 {
         urb_t *urb;
         int retv;
diff -Nru a/drivers/usb/pegasus.h b/drivers/usb/pegasus.h
--- a/drivers/usb/pegasus.h     Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/pegasus.h     Fri Jan  4 17:11:57 2002
@@ -108,7 +108,7 @@
        int                     dev_index;
        int                     intr_interval;
        struct urb              ctrl_urb, rx_urb, tx_urb, intr_urb;
-       devrequest              dr;
+       struct usb_devrequest   dr;
        wait_queue_head_t       ctrl_wait;
        struct semaphore        ctrl_sem;
        unsigned char           ALIGN(rx_buff[PEGASUS_MAX_MTU]);
diff -Nru a/drivers/usb/scanner.c b/drivers/usb/scanner.c
--- a/drivers/usb/scanner.c     Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/scanner.c     Fri Jan  4 17:11:57 2002
@@ -746,8 +746,8 @@
        case SCANNER_IOCTL_CTRLMSG:
        {
                struct ctrlmsg_ioctl {
-                       devrequest      req;
-                       void            *data;
+                       struct usb_devrequest   req;
+                       void                    *data;
                } cmsg;
                int pipe, nb, ret;
                unsigned char buf[64];
diff -Nru a/drivers/usb/scanner.h b/drivers/usb/scanner.h
--- a/drivers/usb/scanner.h     Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/scanner.h     Fri Jan  4 17:11:57 2002
@@ -230,7 +230,7 @@
 #define SCANNER_IOCTL_VENDOR _IOR('U', 0x20, int)
 #define SCANNER_IOCTL_PRODUCT _IOR('U', 0x21, int)
 /* send/recv a control message to the scanner */
-#define SCANNER_IOCTL_CTRLMSG _IOWR('U', 0x22, devrequest )
+#define SCANNER_IOCTL_CTRLMSG _IOWR('U', 0x22, struct usb_devrequest)
 
 
 #define SCN_MAX_MNR 16         /* We're allocated 16 minors */
diff -Nru a/drivers/usb/storage/transport.c b/drivers/usb/storage/transport.c
--- a/drivers/usb/storage/transport.c   Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/storage/transport.c   Fri Jan  4 17:11:57 2002
@@ -385,10 +385,10 @@
 {
        struct completion urb_done;
        int status;
-       devrequest *dr;
+       struct usb_devrequest *dr;
 
        /* allocate the device request structure */
-       dr = kmalloc(sizeof(devrequest), GFP_NOIO);
+       dr = kmalloc(sizeof(struct usb_devrequest), GFP_NOIO);
        if (!dr)
                return -ENOMEM;
 
diff -Nru a/drivers/usb/uhci.c b/drivers/usb/uhci.c
--- a/drivers/usb/uhci.c        Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/uhci.c        Fri Jan  4 17:11:57 2002
@@ -646,7 +646,7 @@
 
                if (usb_pipetype(urb->pipe) == PIPE_CONTROL && urb->setup_packet) {
                        urbp->setup_packet_dma_handle = pci_map_single(uhci->dev,
-                               urb->setup_packet, sizeof(devrequest),
+                               urb->setup_packet, sizeof(struct usb_devrequest),
                                PCI_DMA_TODEVICE);
                        if (!urbp->setup_packet_dma_handle)
                                return NULL;
@@ -715,7 +715,7 @@
 
        if (urbp->setup_packet_dma_handle)
                pci_unmap_single(uhci->dev, urbp->setup_packet_dma_handle,
-                       sizeof(devrequest), PCI_DMA_TODEVICE);
+                       sizeof(struct usb_devrequest), PCI_DMA_TODEVICE);
 
        if (urbp->transfer_buffer_dma_handle)
                pci_unmap_single(uhci->dev, urbp->transfer_buffer_dma_handle,
@@ -2013,7 +2013,7 @@
 {
        struct uhci *uhci = (struct uhci *)urb->dev->bus->hcpriv;
        unsigned int pipe = urb->pipe;
-       devrequest *cmd = (devrequest *)urb->setup_packet;
+       struct usb_devrequest *cmd = (struct usb_devrequest *)urb->setup_packet;
        void *data = urb->transfer_buffer;
        int leni = urb->transfer_buffer_length;
        int len = 0;
@@ -2276,7 +2276,7 @@
 
        if (urbp->setup_packet_dma_handle)
                pci_dma_sync_single(uhci->dev, urbp->setup_packet_dma_handle,
-                       sizeof(devrequest), PCI_DMA_TODEVICE);
+                       sizeof(struct usb_devrequest), PCI_DMA_TODEVICE);
 
        urb->dev = NULL;
        if (urb->complete)
diff -Nru a/drivers/usb/usb-ohci.c b/drivers/usb/usb-ohci.c
--- a/drivers/usb/usb-ohci.c    Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/usb-ohci.c    Fri Jan  4 17:11:57 2002
@@ -1905,7 +1905,7 @@
        struct usb_device * usb_dev = urb->dev;
        ohci_t * ohci = usb_dev->bus->hcpriv;
        unsigned int pipe = urb->pipe;
-       devrequest * cmd = (devrequest *) urb->setup_packet;
+       struct usb_devrequest * cmd = (struct usb_devrequest *) urb->setup_packet;
        void * data = urb->transfer_buffer;
        int leni = urb->transfer_buffer_length;
        int len = 0;
diff -Nru a/drivers/usb/usb-uhci.c b/drivers/usb/usb-uhci.c
--- a/drivers/usb/usb-uhci.c    Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/usb-uhci.c    Fri Jan  4 17:11:57 2002
@@ -1085,7 +1085,7 @@
 {
        if (urb_priv->setup_packet_dma)
                pci_dma_sync_single(s->uhci_pci, urb_priv->setup_packet_dma,
-                                   sizeof(devrequest), PCI_DMA_TODEVICE);
+                                   sizeof(struct usb_devrequest), PCI_DMA_TODEVICE);
 
        if (urb_priv->transfer_buffer_dma)
                pci_dma_sync_single(s->uhci_pci, urb_priv->transfer_buffer_dma,
@@ -1099,7 +1099,7 @@
 {
        if (urb_priv->setup_packet_dma) {
                pci_unmap_single(s->uhci_pci, urb_priv->setup_packet_dma,
-                                sizeof(devrequest), PCI_DMA_TODEVICE);
+                                sizeof(struct usb_devrequest), PCI_DMA_TODEVICE);
                urb_priv->setup_packet_dma = 0;
        }
        if (urb_priv->transfer_buffer_dma) {
@@ -1678,7 +1678,7 @@
        
        if (type == PIPE_CONTROL)
                urb_priv->setup_packet_dma = pci_map_single(s->uhci_pci, 
urb->setup_packet,
-                                                           sizeof(devrequest), 
PCI_DMA_TODEVICE);
+                                                           sizeof(struct 
+usb_devrequest), PCI_DMA_TODEVICE);
 
        if (urb->transfer_buffer_length)
                urb_priv->transfer_buffer_dma = pci_map_single(s->uhci_pci,
@@ -1963,7 +1963,7 @@
        struct usb_device *usb_dev = urb->dev;
        uhci_t *uhci = usb_dev->bus->hcpriv;
        unsigned int pipe = urb->pipe;
-       devrequest *cmd = (devrequest *) urb->setup_packet;
+       struct usb_devrequest *cmd = (struct usb_devrequest *) urb->setup_packet;
        void *data = urb->transfer_buffer;
        int leni = urb->transfer_buffer_length;
        int len = 0;
diff -Nru a/drivers/usb/usb.c b/drivers/usb/usb.c
--- a/drivers/usb/usb.c Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/usb.c Fri Jan  4 17:11:57 2002
@@ -1287,7 +1287,7 @@
 /*-------------------------------------------------------------------*/
 // returns status (negative) or length (positive)
 int usb_internal_control_msg(struct usb_device *usb_dev, unsigned int pipe, 
-                           devrequest *cmd,  void *data, int len, int timeout)
+                           struct usb_devrequest *cmd,  void *data, int len, int 
+timeout)
 {
        urb_t *urb;
        int retv;
@@ -1331,7 +1331,7 @@
 int usb_control_msg(struct usb_device *dev, unsigned int pipe, __u8 request, __u8 
requesttype,
                         __u16 value, __u16 index, void *data, __u16 size, int timeout)
 {
-       devrequest *dr = kmalloc(sizeof(devrequest), GFP_KERNEL);
+       struct usb_devrequest *dr = kmalloc(sizeof(struct usb_devrequest), GFP_KERNEL);
        int ret;
        
        if (!dr)
diff -Nru a/drivers/usb/usbkbd.c b/drivers/usb/usbkbd.c
--- a/drivers/usb/usbkbd.c      Fri Jan  4 17:11:57 2002
+++ b/drivers/usb/usbkbd.c      Fri Jan  4 17:11:57 2002
@@ -74,7 +74,7 @@
        unsigned char new[8];
        unsigned char old[8];
        struct urb irq, led;
-       devrequest dr;
+       struct usb_devrequest dr;
        unsigned char leds, newleds;
        char name[128];
        int open;
diff -Nru a/include/linux/usb.h b/include/linux/usb.h
--- a/include/linux/usb.h       Fri Jan  4 17:11:57 2002
+++ b/include/linux/usb.h       Fri Jan  4 17:11:57 2002
@@ -117,13 +117,26 @@
                mdelay(ms);
 }
 
-typedef struct {
+/**
+ * struct usb_devrequest - structure used to make USB device requests easier to 
+create and decode
+ * @requesttype: matches the USB bmRequestType field
+ * @request: matches the USB bRequest field
+ * @value: matches the USB wValue field
+ * @index: matches the USB wIndex field
+ * @length: matches the USB wLength field
+ *
+ * This structure is used to send device requests to a USB device.  It matches
+ * the different fields of the USB 2.0 Spec section 9.3, table 9-2.  See the
+ * USB spec for a fuller description of the different fields, and what they are
+ * used for.
+ */
+struct usb_devrequest {
        __u8 requesttype;
        __u8 request;
        __u16 value;
        __u16 index;
        __u16 length;
-} devrequest __attribute__ ((packed));
+} __attribute__ ((packed));
 
 /*
  * USB device number allocation bitmap. There's one bitmap
diff -Nru a/include/net/bluetooth/hci_usb.h b/include/net/bluetooth/hci_usb.h
--- a/include/net/bluetooth/hci_usb.h   Fri Jan  4 17:11:57 2002
+++ b/include/net/bluetooth/hci_usb.h   Fri Jan  4 17:11:57 2002
@@ -38,7 +38,7 @@
 struct hci_usb {
        struct usb_device       *udev;
 
-       devrequest              dev_req;
+       struct usb_devrequest   dev_req;
        struct urb              *ctrl_urb;
        struct urb              *intr_urb;
        struct urb              *read_urb;

Reply via email to