# This is a BitKeeper generated patch for the following project: # Project Name: Linux kernel tree # This patch format is intended for GNU patch command version 2.5 or higher. # This patch includes the following deltas: # ChangeSet 1.599 -> 1.600 # drivers/usb/hcd/ehci-q.c 1.4 -> 1.5 # drivers/usb/hid.h 1.8 -> 1.9 # drivers/usb/auerswald.c 1.3 -> 1.4 # drivers/usb/CDCEther.c 1.6 -> 1.7 # arch/mips/au1000/common/usbdev.c 1.1 -> 1.2 # drivers/usb/acm.c 1.10 -> 1.11 # drivers/char/joystick/iforce.c 1.4 -> 1.5 # drivers/usb/CDCEther.h 1.3 -> 1.4 # drivers/usb/bluetooth.c 1.13 -> 1.14 # drivers/usb/usb-ohci.c 1.24 -> 1.25 # drivers/usb/uhci.c 1.28 -> 1.29 # drivers/usb/scanner.c 1.9 -> 1.10 # arch/cris/drivers/usb-host.c 1.8 -> 1.9 # drivers/usb/storage/transport.c 1.11 -> 1.12 # drivers/usb/scanner.h 1.9 -> 1.10 # drivers/usb/rtl8150.c 1.3 -> 1.4 # drivers/usb/usbkbd.c 1.6 -> 1.7 # include/linux/usb.h 1.14 -> 1.15 # drivers/usb/pegasus.h 1.10 -> 1.11 # drivers/usb/usb-uhci.c 1.24 -> 1.25 # drivers/usb/pegasus.c 1.14 -> 1.15 # drivers/usb/hcd.c 1.3 -> 1.4 # drivers/usb/catc.c 1.6 -> 1.7 # drivers/usb/devio.c 1.11 -> 1.12 # drivers/usb/usb.c 1.21 -> 1.22 # drivers/usb/hid-core.c 1.12 -> 1.13 # drivers/isdn/hisax/st5481.h 1.3 -> 1.4 # drivers/usb/kaweth.c 1.10 -> 1.11 # # The following is the BitKeeper ChangeSet Log # -------------------------------------------- # 02/08/05 greg@kroah.com 1.600 # USB: removed the devrequest typedef # # use "struct usb_ctrlrequest" from now on. # -------------------------------------------- # diff -Nru a/arch/cris/drivers/usb-host.c b/arch/cris/drivers/usb-host.c --- a/arch/cris/drivers/usb-host.c Mon Aug 5 14:46:58 2002 +++ b/arch/cris/drivers/usb-host.c Mon Aug 5 14:46:58 2002 @@ -1986,7 +1986,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_ctrlrequest *cmd = (struct usb_ctrlrequest *) urb->setup_packet; void *data = urb->transfer_buffer; int leni = urb->transfer_buffer_length; int len = 0; @@ -2010,10 +2010,10 @@ return 0; } - bmRType_bReq = cmd->requesttype | cmd->request << 8; - wValue = le16_to_cpu(cmd->value); - wIndex = le16_to_cpu(cmd->index); - wLength = le16_to_cpu(cmd->length); + bmRType_bReq = cmd->bRequestType | cmd->bRequest << 8; + wValue = le16_to_cpu(cmd->wValue); + wIndex = le16_to_cpu(cmd->wIndex); + wLength = le16_to_cpu(cmd->wLength); dbg_rh("bmRType_bReq : 0x%04X (%d)", bmRType_bReq, bmRType_bReq); dbg_rh("wValue : 0x%04X (%d)", wValue, wValue); diff -Nru a/arch/mips/au1000/common/usbdev.c b/arch/mips/au1000/common/usbdev.c --- a/arch/mips/au1000/common/usbdev.c Mon Aug 5 14:46:58 2002 +++ b/arch/mips/au1000/common/usbdev.c Mon Aug 5 14:46:58 2002 @@ -866,7 +866,7 @@ // SETUP packet request parser static void -process_setup (struct usb_serial* serial, devrequest* setup) +process_setup (struct usb_serial* serial, struct usb_ctrlrequest* setup) { int desc_len, strnum; @@ -874,7 +874,7 @@ switch (setup->request) { case USB_REQ_SET_ADDRESS: - serial->address = le16_to_cpu(setup->value); + serial->address = le16_to_cpu(setup->wValue); dbg(__FUNCTION__ ": our address=%d", serial->address); if (serial->address > 127 || serial->state == CONFIGURED) { // usb spec doesn't tell us what to do, so just go to @@ -887,8 +887,8 @@ serial->state = DEFAULT; break; case USB_REQ_GET_DESCRIPTOR: - desc_len = le16_to_cpu(setup->length); - switch (le16_to_cpu(setup->value) >> 8) { + desc_len = le16_to_cpu(setup->wLength); + switch (le16_to_cpu(setup->wValue) >> 8) { case USB_DT_DEVICE: // send device descriptor! desc_len = desc_len > serial->dev_desc->bLength ? @@ -901,7 +901,7 @@ // If the config descr index in low-byte of // setup->value is valid, send config descr, // otherwise stall ep0. - if ((le16_to_cpu(setup->value) & 0xff) == 0) { + if ((le16_to_cpu(setup->wValue) & 0xff) == 0) { // send config descriptor! if (desc_len <= USB_DT_CONFIG_SIZE) { dbg("sending partial config desc, size=%d", @@ -943,7 +943,7 @@ case USB_DT_STRING: // If the string descr index in low-byte of setup->value // is valid, send string descr, otherwise stall ep0. - strnum = le16_to_cpu(setup->value) & 0xff; + strnum = le16_to_cpu(setup->wValue) & 0xff; if (strnum >= 0 && strnum < 6) { struct usb_string_descriptor *desc = serial->str_desc[strnum]; @@ -957,7 +957,7 @@ break; default: // Invalid request dbg("invalid get desc=%d, stalled", - le16_to_cpu(setup->value) >> 8); + le16_to_cpu(setup->wValue) >> 8); endpoint_stall(&serial->ep_ctrl); // Stall endpoint 0 break; } @@ -967,7 +967,7 @@ break; case USB_REQ_GET_INTERFACE: // interface must be zero. - if ((le16_to_cpu(setup->index) & 0xff) || + if ((le16_to_cpu(setup->wIndex) & 0xff) || serial->state == ADDRESS) { // FIXME: respond with "request error". how? } else if (serial->state == CONFIGURED) { @@ -981,9 +981,9 @@ if (serial->state == ADDRESS) { // FIXME: respond with "request error". how? } else if (serial->state == CONFIGURED) { - serial->interface = le16_to_cpu(setup->index) & 0xff; + serial->interface = le16_to_cpu(setup->wIndex) & 0xff; serial->alternate_setting = - le16_to_cpu(setup->value) & 0xff; + le16_to_cpu(setup->wValue) & 0xff; // interface and alternate_setting must be zero if (serial->interface || serial->alternate_setting) { // FIXME: respond with "request error". how? @@ -992,7 +992,7 @@ break; case USB_REQ_SET_CONFIGURATION: // set active config to low-byte of serial.value - serial->configuration = le16_to_cpu(setup->value) & 0xff; + serial->configuration = le16_to_cpu(setup->wValue) & 0xff; dbg("set config, config=%d", serial->configuration); if (!serial->configuration && serial->state > DEFAULT) serial->state = ADDRESS; @@ -1009,7 +1009,7 @@ break; case USB_REQ_GET_STATUS: // FIXME: looks like the h/w handles this one - switch (setup->requesttype) { + switch (setup->bRequestType) { case 0x80: // Device // FIXME: send device status break; @@ -1027,16 +1027,16 @@ case USB_REQ_CLEAR_FEATURE: switch (setup->requesttype) { case 0x00: // Device - if ((le16_to_cpu(setup->value) & 0xff) == 1) + if ((le16_to_cpu(setup->wValue) & 0xff) == 1) serial->remote_wakeup_en = 0; else endpoint_stall(&serial->ep_ctrl); break; case 0x02: // End Point - if ((le16_to_cpu(setup->value) & 0xff) == 0) { + if ((le16_to_cpu(setup->wValue) & 0xff) == 0) { endpoint_t *ep = epnum_to_ep(serial, - le16_to_cpu(setup->index) & 0xff); + le16_to_cpu(setup->wIndex) & 0xff); endpoint_unstall(ep); endpoint_reset_datatoggle(ep); @@ -1046,18 +1046,18 @@ } break; case USB_REQ_SET_FEATURE: - switch (setup->requesttype) { + switch (setup->bRequestType) { case 0x00: // Device - if ((le16_to_cpu(setup->value) & 0xff) == 1) + if ((le16_to_cpu(setup->wValue) & 0xff) == 1) serial->remote_wakeup_en = 1; else endpoint_stall(&serial->ep_ctrl); break; case 0x02: // End Point - if ((le16_to_cpu(setup->value) & 0xff) == 0) { + if ((le16_to_cpu(setup->wValue) & 0xff) == 0) { endpoint_t *ep = epnum_to_ep(serial, - le16_to_cpu(setup->index) & 0xff); + le16_to_cpu(setup->wIndex) & 0xff); endpoint_stall(ep); } else @@ -1100,14 +1100,14 @@ // SETUP packet received ? //if (cs & USBDEV_CS_SU) { FIXME: uncomment! - if (pkt->size == sizeof(devrequest)) { - devrequest setup; + if (pkt->size == sizeof(struct usb_ctrlrequest)) { + struct usb_ctrlrequest setup; if ((cs & (USBDEV_CS_NAK | USBDEV_CS_ACK)) == USBDEV_CS_ACK) dbg("got SETUP"); else dbg("got NAK SETUP, cs=%08x", cs); - memcpy(&setup, pkt->bufptr, sizeof(devrequest)); + memcpy(&setup, pkt->bufptr, sizeof(struct usb_ctrlrequest)); process_setup(serial, &setup); //} else FIXME: uncomment! //dbg(__FUNCTION__ ": wrong size SETUP received"); diff -Nru a/drivers/char/joystick/iforce.c b/drivers/char/joystick/iforce.c --- a/drivers/char/joystick/iforce.c Mon Aug 5 14:46:58 2002 +++ b/drivers/char/joystick/iforce.c Mon Aug 5 14:46:58 2002 @@ -134,7 +134,7 @@ #ifdef IFORCE_USB struct usb_device *usbdev; /* USB transfer */ struct urb irq, out, ctrl; - devrequest dr; + struct usb_ctrlrequest dr; #endif /* Force Feedback */ wait_queue_head_t wait; @@ -283,7 +283,7 @@ #ifdef IFORCE_USB case IFORCE_USB: - iforce->dr.request = packet[0]; + iforce->dr.bRequest = packet[0]; iforce->ctrl.dev = iforce->usbdev; set_current_state(TASK_INTERRUPTIBLE); @@ -1027,9 +1027,9 @@ iforce->bus = IFORCE_USB; iforce->usbdev = dev; - iforce->dr.requesttype = USB_TYPE_VENDOR | USB_DIR_IN | USB_RECIP_INTERFACE; - iforce->dr.index = 0; - iforce->dr.length = 16; + iforce->dr.bRequestType = USB_TYPE_VENDOR | USB_DIR_IN | USB_RECIP_INTERFACE; + iforce->dr.wIndex = 0; + iforce->dr.wLength = 16; FILL_INT_URB(&iforce->irq, dev, usb_rcvintpipe(dev, epirq->bEndpointAddress), iforce->data, 16, iforce_usb_irq, iforce, epirq->bInterval); diff -Nru a/drivers/isdn/hisax/st5481.h b/drivers/isdn/hisax/st5481.h --- a/drivers/isdn/hisax/st5481.h Mon Aug 5 14:46:58 2002 +++ b/drivers/isdn/hisax/st5481.h Mon Aug 5 14:46:58 2002 @@ -309,7 +309,7 @@ typedef void (*ctrl_complete_t)(void *); typedef struct ctrl_msg { - devrequest dr; + struct usb_ctrlrequest dr; ctrl_complete_t complete; void *context; } ctrl_msg; diff -Nru a/drivers/usb/CDCEther.c b/drivers/usb/CDCEther.c --- a/drivers/usb/CDCEther.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/CDCEther.c Mon Aug 5 14:46:58 2002 @@ -497,14 +497,14 @@ static void CDC_SetEthernetPacketFilter (ether_dev_t *ether_dev) { #if 0 - devrequest *dr = ðer_dev->ctrl_dr; + struct usb_ctrlrequest *dr = ðer_dev->ctrl_dr; int res; - dr->requesttype = USB_TYPE_CLASS | USB_DIR_OUT | USB_RECIP_INTERFACE; - dr->request = SET_ETHERNET_PACKET_FILTER; - dr->value = cpu_to_le16(ether_dev->mode_flags); - dr->index = cpu_to_le16((u16)ether_dev->comm_interface); - dr->length = 0; + dr->bRequestType = USB_TYPE_CLASS | USB_DIR_OUT | USB_RECIP_INTERFACE; + dr->bRequest = SET_ETHERNET_PACKET_FILTER; + dr->wValue = cpu_to_le16(ether_dev->mode_flags); + dr->wIndex = cpu_to_le16((u16)ether_dev->comm_interface); + dr->wLength = 0; FILL_CONTROL_URB(ðer_dev->ctrl_urb, ether_dev->usb, diff -Nru a/drivers/usb/CDCEther.h b/drivers/usb/CDCEther.h --- a/drivers/usb/CDCEther.h Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/CDCEther.h Mon Aug 5 14:46:58 2002 @@ -75,7 +75,7 @@ __u8 bNumberPowerFilters; __u16 mode_flags; int intr_interval; - devrequest ctrl_dr; + struct usb_ctrlrequest ctrl_dr; struct urb rx_urb, tx_urb, intr_urb, ctrl_urb; unsigned char rx_buff[CDC_ETHER_MAX_MTU] __attribute__((aligned(L1_CACHE_BYTES))); unsigned char tx_buff[CDC_ETHER_MAX_MTU] __attribute__((aligned(L1_CACHE_BYTES))); diff -Nru a/drivers/usb/acm.c b/drivers/usb/acm.c --- a/drivers/usb/acm.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/acm.c Mon Aug 5 14:46:58 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_ctrlrequest *dr = urb->transfer_buffer; unsigned char *data = (unsigned char *)(dr + 1); int newctrl; @@ -195,7 +195,7 @@ return; } - switch (dr->request) { + switch (dr->bRequest) { case ACM_IRQ_NETWORK: @@ -223,7 +223,7 @@ default: dbg("unknown control event received: request %d index %d len %d data0 %d data1 %d", - dr->request, dr->index, dr->length, data[0], data[1]); + dr->bRequest, dr->wIndex, dr->wLength, data[0], data[1]); return; } } diff -Nru a/drivers/usb/auerswald.c b/drivers/usb/auerswald.c --- a/drivers/usb/auerswald.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/auerswald.c Mon Aug 5 14:46:58 2002 @@ -206,7 +206,7 @@ char *bufp; /* reference to allocated data buffer */ unsigned int len; /* number of characters in data buffer */ unsigned int retries; /* for urb retries */ - devrequest *dr; /* for setup data in control messages */ + struct usb_ctrlrequest *dr; /* for setup data in control messages */ struct urb * urbp; /* USB urb */ struct auerbufctl *list; /* pointer to list */ struct list_head buff_list; /* reference to next buffer in list */ @@ -690,12 +690,12 @@ __u16 value, __u16 index, void *data, __u16 size, int timeout) { int ret; - devrequest *dr; + struct usb_ctrlrequest *dr; struct urb *urb; int length; dbg ("auerchain_control_msg"); - dr = kmalloc (sizeof (devrequest), GFP_KERNEL); + dr = kmalloc (sizeof (struct usb_ctrlrequest), GFP_KERNEL); if (!dr) return -ENOMEM; urb = usb_alloc_urb (0); @@ -704,11 +704,11 @@ return -ENOMEM; } - dr->requesttype = requesttype; - dr->request = request; - dr->value = cpu_to_le16 (value); - dr->index = cpu_to_le16 (index); - dr->length = cpu_to_le16 (size); + dr->bRequestType = requesttype; + dr->bRequest = request; + dr->wValue = cpu_to_le16 (value); + dr->wIndex = cpu_to_le16 (index); + dr->wLength = cpu_to_le16 (size); FILL_CONTROL_URB (urb, dev, pipe, (unsigned char*)dr, data, size, /* build urb */ (usb_complete_t)auerchain_blocking_completion,0); @@ -799,7 +799,7 @@ INIT_LIST_HEAD (&bep->buff_list); bep->bufp = (char *) kmalloc (bufsize, GFP_KERNEL); if (!bep->bufp) goto bl_fail; - bep->dr = (devrequest *) kmalloc (sizeof (devrequest), GFP_KERNEL); + bep->dr = (struct usb_ctrlrequest *) kmalloc (sizeof (struct usb_ctrlrequest), GFP_KERNEL); if (!bep->dr) goto bl_fail; bep->urbp = usb_alloc_urb (0); if (!bep->urbp) goto bl_fail; @@ -907,13 +907,13 @@ } /* fill the control message */ - bp->dr->requesttype = AUT_RREQ; - bp->dr->request = AUV_RBLOCK; - bp->dr->length = bp->dr->value; /* temporary stored */ - bp->dr->value = cpu_to_le16 (1); /* Retry Flag */ + bp->dr->bRequestType = AUT_RREQ; + bp->dr->bRequest = AUV_RBLOCK; + bp->dr->wLength = bp->dr->wValue; /* temporary stored */ + bp->dr->wValue = cpu_to_le16 (1); /* Retry Flag */ /* bp->dr->index = channel id; remains */ FILL_CONTROL_URB (bp->urbp, cp->usbdev, usb_rcvctrlpipe (cp->usbdev, 0), - (unsigned char*)bp->dr, bp->bufp, le16_to_cpu (bp->dr->length), + (unsigned char*)bp->dr, bp->bufp, le16_to_cpu (bp->dr->wLength), (usb_complete_t)auerswald_ctrlread_complete,bp); /* submit the control msg as next paket */ @@ -955,11 +955,11 @@ bp->retries++; dbg ("Retry count = %d", bp->retries); /* send a long dummy control-write-message to allow device firmware to react */ - bp->dr->requesttype = AUT_WREQ; - bp->dr->request = AUV_DUMMY; - bp->dr->value = bp->dr->length; /* temporary storage */ + bp->dr->bRequestType = AUT_WREQ; + bp->dr->bRequest = AUV_DUMMY; + bp->dr->wValue = bp->dr->wLength; /* temporary storage */ // bp->dr->index channel ID remains - bp->dr->length = cpu_to_le16 (32); /* >= 8 bytes */ + bp->dr->wLength = cpu_to_le16 (32); /* >= 8 bytes */ FILL_CONTROL_URB (bp->urbp, cp->usbdev, usb_sndctrlpipe (cp->usbdev, 0), (unsigned char*)bp->dr, bp->bufp, 32, (usb_complete_t)auerswald_ctrlread_wretcomplete,bp); @@ -972,7 +972,7 @@ auerswald_ctrlread_wretcomplete (bp->urbp); } return; - } + } /* get the actual bytecount (incl. headerbyte) */ bp->len = urb->actual_length; @@ -1074,11 +1074,11 @@ } /* fill the control message */ - bp->dr->requesttype = AUT_RREQ; - bp->dr->request = AUV_RBLOCK; - bp->dr->value = cpu_to_le16 (0); - bp->dr->index = cpu_to_le16 (channelid | AUH_DIRECT | AUH_UNSPLIT); - bp->dr->length = cpu_to_le16 (bytecount); + bp->dr->bRequestType = AUT_RREQ; + bp->dr->bRequest = AUV_RBLOCK; + bp->dr->wValue = cpu_to_le16 (0); + bp->dr->wIndex = cpu_to_le16 (channelid | AUH_DIRECT | AUH_UNSPLIT); + bp->dr->wLength = cpu_to_le16 (bytecount); FILL_CONTROL_URB (bp->urbp, cp->usbdev, usb_rcvctrlpipe (cp->usbdev, 0), (unsigned char*)bp->dr, bp->bufp, bytecount, (usb_complete_t)auerswald_ctrlread_complete,bp); @@ -1813,11 +1813,11 @@ /* Set the transfer Parameters */ bp->len = len+AUH_SIZE; - bp->dr->requesttype = AUT_WREQ; - bp->dr->request = AUV_WBLOCK; - bp->dr->value = cpu_to_le16 (0); - bp->dr->index = cpu_to_le16 (ccp->scontext.id | AUH_DIRECT | AUH_UNSPLIT); - bp->dr->length = cpu_to_le16 (len+AUH_SIZE); + bp->dr->bRequestType = AUT_WREQ; + bp->dr->bRequest = AUV_WBLOCK; + bp->dr->wValue = cpu_to_le16 (0); + bp->dr->wIndex = cpu_to_le16 (ccp->scontext.id | AUH_DIRECT | AUH_UNSPLIT); + bp->dr->wLength = cpu_to_le16 (len+AUH_SIZE); FILL_CONTROL_URB (bp->urbp, cp->usbdev, usb_sndctrlpipe (cp->usbdev, 0), (unsigned char*)bp->dr, bp->bufp, len+AUH_SIZE, auerchar_ctrlwrite_complete, bp); diff -Nru a/drivers/usb/bluetooth.c b/drivers/usb/bluetooth.c --- a/drivers/usb/bluetooth.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/bluetooth.c Mon Aug 5 14:46:58 2002 @@ -175,7 +175,7 @@ __u8 control_out_bInterfaceNum; struct urb * control_urb_pool[NUM_CONTROL_URBS]; - devrequest dr[NUM_CONTROL_URBS]; + struct usb_ctrlrequest dr[NUM_CONTROL_URBS]; unsigned char * interrupt_in_buffer; struct urb * interrupt_in_urb; @@ -283,7 +283,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_ctrlrequest *dr = NULL; int i; int status; @@ -320,11 +320,11 @@ } memcpy (urb->transfer_buffer, buf, len); - dr->requesttype = BLUETOOTH_CONTROL_REQUEST_TYPE; - dr->request = request; - dr->value = cpu_to_le16((u16) value); - dr->index = cpu_to_le16((u16) bluetooth->control_out_bInterfaceNum); - dr->length = cpu_to_le16((u16) len); + dr->bRequestType = BLUETOOTH_CONTROL_REQUEST_TYPE; + dr->bRequest = request; + dr->wValue = cpu_to_le16((u16) value); + dr->wIndex = cpu_to_le16((u16) bluetooth->control_out_bInterfaceNum); + dr->wLength = cpu_to_le16((u16) len); FILL_CONTROL_URB (urb, bluetooth->dev, usb_sndctrlpipe(bluetooth->dev, 0), (unsigned char*)dr, urb->transfer_buffer, len, bluetooth_ctrl_callback, bluetooth); diff -Nru a/drivers/usb/catc.c b/drivers/usb/catc.c --- a/drivers/usb/catc.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/catc.c Mon Aug 5 14:46:58 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_ctrlrequest ctrl_dr; struct timer_list timer; u8 stats_buf[8]; @@ -383,14 +383,14 @@ 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_ctrlrequest *dr = &catc->ctrl_dr; int status; - dr->request = q->request; - dr->requesttype = 0x40 | q->dir; - dr->value = cpu_to_le16(q->value); - dr->index = cpu_to_le16(q->index); - dr->length = cpu_to_le16(q->len); + dr->bRequest = q->request; + dr->bRequestType = 0x40 | q->dir; + dr->wValue = cpu_to_le16(q->value); + dr->wIndex = cpu_to_le16(q->index); + dr->wLength = cpu_to_le16(q->len); urb->pipe = q->dir ? usb_rcvctrlpipe(usbdev, 0) : usb_sndctrlpipe(usbdev, 0); urb->transfer_buffer_length = q->len; diff -Nru a/drivers/usb/devio.c b/drivers/usb/devio.c --- a/drivers/usb/devio.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/devio.c Mon Aug 5 14:46:58 2002 @@ -772,7 +772,7 @@ struct usbdevfs_iso_packet_desc *isopkt = NULL; struct usb_endpoint_descriptor *ep_desc; struct async *as; - devrequest *dr = NULL; + struct usb_ctrlrequest *dr = NULL; unsigned int u, totlen, isofrmlen; int ret; @@ -802,23 +802,23 @@ /* 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_ctrlrequest), GFP_KERNEL))) return -ENOMEM; if (copy_from_user(dr, (unsigned char*)uurb.buffer, 8)) { kfree(dr); return -EFAULT; } - if (uurb.buffer_length < (le16_to_cpup(&dr->length) + 8)) { + if (uurb.buffer_length < (le16_to_cpup(&dr->wLength) + 8)) { kfree(dr); return -EINVAL; } - if ((ret = check_ctrlrecip(ps, dr->requesttype, le16_to_cpup(&dr->index)))) { + if ((ret = check_ctrlrecip(ps, dr->bRequestType, le16_to_cpup(&dr->wIndex)))) { kfree(dr); return ret; } - uurb.endpoint = (uurb.endpoint & ~USB_ENDPOINT_DIR_MASK) | (dr->requesttype & USB_ENDPOINT_DIR_MASK); + uurb.endpoint = (uurb.endpoint & ~USB_ENDPOINT_DIR_MASK) | (dr->bRequestType & USB_ENDPOINT_DIR_MASK); uurb.number_of_packets = 0; - uurb.buffer_length = le16_to_cpup(&dr->length); + uurb.buffer_length = le16_to_cpup(&dr->wLength); uurb.buffer += 8; if (!access_ok((uurb.endpoint & USB_DIR_IN) ? VERIFY_WRITE : VERIFY_READ, uurb.buffer, uurb.buffer_length)) { 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 Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/hcd/ehci-q.c Mon Aug 5 14:46:58 2002 @@ -368,7 +368,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_ctrlrequest), PCI_DMA_TODEVICE); } @@ -419,7 +419,7 @@ */ if (!unmapped++ && usb_pipecontrol (urb->pipe)) { direction = PCI_DMA_TODEVICE; - size = sizeof (devrequest); + size = sizeof (struct usb_ctrlrequest); } else { direction = usb_pipein (urb->pipe) ? PCI_DMA_FROMDEVICE @@ -470,13 +470,13 @@ qtd->buf_dma = pci_map_single ( ehci->hcd.pdev, urb->setup_packet, - sizeof (devrequest), + sizeof (struct usb_ctrlrequest), 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_ctrlrequest), 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 Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/hcd.c Mon Aug 5 14:46:58 2002 @@ -316,16 +316,16 @@ /* 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_ctrlrequest *cmd = (struct usb_ctrlrequest *) urb->setup_packet; u16 typeReq, wValue, wIndex, wLength; const u8 *bufp = 0; u8 *ubuf = urb->transfer_buffer; int len = 0; - typeReq = (cmd->requesttype << 8) | cmd->request; - wValue = le16_to_cpu (cmd->value); - wIndex = le16_to_cpu (cmd->index); - wLength = le16_to_cpu (cmd->length); + typeReq = (cmd->bRequestType << 8) | cmd->bRequest; + wValue = le16_to_cpu (cmd->wValue); + wIndex = le16_to_cpu (cmd->wIndex); + wLength = le16_to_cpu (cmd->wLength); if (wLength > urb->transfer_buffer_length) goto error; diff -Nru a/drivers/usb/hid-core.c b/drivers/usb/hid-core.c --- a/drivers/usb/hid-core.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/hid-core.c Mon Aug 5 14:46:58 2002 @@ -988,7 +988,7 @@ static int hid_submit_out(struct hid_device *hid) { - hid->urbout.transfer_buffer_length = le16_to_cpup(&hid->out[hid->outtail].dr.length); + hid->urbout.transfer_buffer_length = le16_to_cpup(&hid->out[hid->outtail].dr.wLength); hid->urbout.transfer_buffer = hid->out[hid->outtail].buffer; hid->urbout.setup_packet = (void *) &(hid->out[hid->outtail].dr); hid->urbout.dev = hid->dev; @@ -1018,8 +1018,8 @@ { hid_output_report(report, hid->out[hid->outhead].buffer); - hid->out[hid->outhead].dr.value = cpu_to_le16(0x200 | report->id); - hid->out[hid->outhead].dr.length = cpu_to_le16((report->size + 7) >> 3); + hid->out[hid->outhead].dr.wValue = cpu_to_le16(0x200 | report->id); + hid->out[hid->outhead].dr.wLength = cpu_to_le16((report->size + 7) >> 3); hid->outhead = (hid->outhead + 1) & (HID_CONTROL_FIFO_SIZE - 1); @@ -1204,9 +1204,9 @@ hid->ifnum = interface->bInterfaceNumber; for (n = 0; n < HID_CONTROL_FIFO_SIZE; n++) { - hid->out[n].dr.requesttype = USB_TYPE_CLASS | USB_RECIP_INTERFACE; - hid->out[n].dr.request = USB_REQ_SET_REPORT; - hid->out[n].dr.index = cpu_to_le16(hid->ifnum); + hid->out[n].dr.bRequestType = USB_TYPE_CLASS | USB_RECIP_INTERFACE; + hid->out[n].dr.bRequest = USB_REQ_SET_REPORT; + hid->out[n].dr.wIndex = cpu_to_le16(hid->ifnum); } hid->name[0] = 0; diff -Nru a/drivers/usb/hid.h b/drivers/usb/hid.h --- a/drivers/usb/hid.h Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/hid.h Mon Aug 5 14:46:58 2002 @@ -287,7 +287,7 @@ #define HID_CONTROL_FIFO_SIZE 8 struct hid_control_fifo { - devrequest dr; + struct usb_ctrlrequest dr; char buffer[HID_BUFFER_SIZE]; }; diff -Nru a/drivers/usb/kaweth.c b/drivers/usb/kaweth.c --- a/drivers/usb/kaweth.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/kaweth.c Mon Aug 5 14:46:58 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_ctrlrequest *cmd, void *data, int len, int timeout); /**************************************************************** @@ -230,7 +230,7 @@ __u16 size, int timeout) { - devrequest *dr; + struct usb_ctrlrequest *dr; kaweth_dbg("kaweth_control()"); @@ -239,7 +239,7 @@ return -EBUSY; } - dr = kmalloc(sizeof(devrequest), GFP_ATOMIC); + dr = kmalloc(sizeof(struct usb_ctrlrequest), GFP_ATOMIC); if(!dr) { @@ -247,11 +247,11 @@ return -ENOMEM; } - dr->requesttype = requesttype; - dr->request = request; - dr->value = cpu_to_le16p(&value); - dr->index = cpu_to_le16p(&index); - dr->length = cpu_to_le16p(&size); + dr->bRequestType = requesttype; + dr->bRequest = request; + dr->wValue = cpu_to_le16p(&value); + dr->wIndex = cpu_to_le16p(&index); + dr->wLength = cpu_to_le16p(&size); return kaweth_internal_control_msg(kaweth->dev, pipe, @@ -1009,7 +1009,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_ctrlrequest *cmd, void *data, int len, int timeout) { struct urb *urb; int retv; diff -Nru a/drivers/usb/pegasus.c b/drivers/usb/pegasus.c --- a/drivers/usb/pegasus.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/pegasus.c Mon Aug 5 14:46:58 2002 @@ -149,11 +149,11 @@ remove_wait_queue(&pegasus->ctrl_wait, &wait); set_current_state(TASK_RUNNING); - pegasus->dr.requesttype = PEGASUS_REQT_READ; - pegasus->dr.request = PEGASUS_REQ_GET_REGS; - pegasus->dr.value = cpu_to_le16 (0); - pegasus->dr.index = cpu_to_le16p(&indx); - pegasus->dr.length = cpu_to_le16p(&size); + pegasus->dr.bRequestType = PEGASUS_REQT_READ; + pegasus->dr.bRequest = PEGASUS_REQ_GET_REGS; + pegasus->dr.wValue = cpu_to_le16 (0); + pegasus->dr.wIndex = cpu_to_le16p(&indx); + pegasus->dr.wLength = cpu_to_le16p(&size); pegasus->ctrl_urb->transfer_buffer_length = size; FILL_CONTROL_URB( pegasus->ctrl_urb, pegasus->usb, @@ -199,11 +199,11 @@ remove_wait_queue(&pegasus->ctrl_wait, &wait); set_current_state(TASK_RUNNING); - pegasus->dr.requesttype = PEGASUS_REQT_WRITE; - pegasus->dr.request = PEGASUS_REQ_SET_REGS; - pegasus->dr.value = cpu_to_le16 (0); - pegasus->dr.index = cpu_to_le16p( &indx ); - pegasus->dr.length = cpu_to_le16p( &size ); + pegasus->dr.bRequestType = PEGASUS_REQT_WRITE; + pegasus->dr.bRequest = PEGASUS_REQ_SET_REGS; + pegasus->dr.wValue = cpu_to_le16 (0); + pegasus->dr.wIndex = cpu_to_le16p( &indx ); + pegasus->dr.wLength = cpu_to_le16p( &size ); pegasus->ctrl_urb->transfer_buffer_length = size; FILL_CONTROL_URB( pegasus->ctrl_urb, pegasus->usb, @@ -249,11 +249,11 @@ remove_wait_queue(&pegasus->ctrl_wait, &wait); set_current_state(TASK_RUNNING); - pegasus->dr.requesttype = PEGASUS_REQT_WRITE; - pegasus->dr.request = PEGASUS_REQ_SET_REG; - pegasus->dr.value = cpu_to_le16p( &dat); - pegasus->dr.index = cpu_to_le16p( &indx ); - pegasus->dr.length = cpu_to_le16( 1 ); + pegasus->dr.bRequestType = PEGASUS_REQT_WRITE; + pegasus->dr.bRequest = PEGASUS_REQ_SET_REG; + pegasus->dr.wValue = cpu_to_le16p( &dat); + pegasus->dr.wIndex = cpu_to_le16p( &indx ); + pegasus->dr.wLength = cpu_to_le16( 1 ); pegasus->ctrl_urb->transfer_buffer_length = 1; FILL_CONTROL_URB( pegasus->ctrl_urb, pegasus->usb, @@ -282,11 +282,11 @@ { int ret; - pegasus->dr.requesttype = PEGASUS_REQT_WRITE; - pegasus->dr.request = PEGASUS_REQ_SET_REGS; - pegasus->dr.value = 0; - pegasus->dr.index = cpu_to_le16(EthCtrl0); - pegasus->dr.length = cpu_to_le16(3); + pegasus->dr.bRequestType = PEGASUS_REQT_WRITE; + pegasus->dr.bRequest = PEGASUS_REQ_SET_REGS; + pegasus->dr.wValue = 0; + pegasus->dr.wIndex = cpu_to_le16(EthCtrl0); + pegasus->dr.wLength = cpu_to_le16(3); pegasus->ctrl_urb->transfer_buffer_length = 3; FILL_CONTROL_URB( pegasus->ctrl_urb, pegasus->usb, diff -Nru a/drivers/usb/pegasus.h b/drivers/usb/pegasus.h --- a/drivers/usb/pegasus.h Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/pegasus.h Mon Aug 5 14:46:58 2002 @@ -99,7 +99,7 @@ int dev_index; int intr_interval; struct urb *ctrl_urb, *rx_urb, *tx_urb, *intr_urb; - devrequest dr; + struct usb_ctrlrequest dr; wait_queue_head_t ctrl_wait; struct semaphore sem; unsigned char rx_buff[PEGASUS_MAX_MTU]; diff -Nru a/drivers/usb/rtl8150.c b/drivers/usb/rtl8150.c --- a/drivers/usb/rtl8150.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/rtl8150.c Mon Aug 5 14:46:58 2002 @@ -91,7 +91,7 @@ struct net_device_stats stats; struct net_device *netdev; struct urb *rx_urb, *tx_urb, *intr_urb, *ctrl_urb; - devrequest dr; + struct usb_ctrlrequest dr; int intr_interval; u16 rx_creg; u8 rx_buff[RTL8150_MAX_MTU]; @@ -169,11 +169,11 @@ if (test_bit(RX_REG_SET, &dev->flags)) return -EAGAIN; - dev->dr.requesttype = RTL8150_REQT_WRITE; - dev->dr.request = RTL8150_REQ_SET_REGS; - dev->dr.value = cpu_to_le16(indx); - dev->dr.index = 0; - dev->dr.length = cpu_to_le16(2); + dev->dr.bRequestType = RTL8150_REQT_WRITE; + dev->dr.bRequest = RTL8150_REQ_SET_REGS; + dev->dr.wValue = cpu_to_le16(indx); + dev->dr.wIndex = 0; + dev->dr.wLength = cpu_to_le16(2); dev->ctrl_urb->transfer_buffer_length = 2; FILL_CONTROL_URB(dev->ctrl_urb, dev->udev, usb_sndctrlpipe(dev->udev,0), (char*)&dev->dr, &dev->rx_creg, 2, ctrl_callback, dev); diff -Nru a/drivers/usb/scanner.c b/drivers/usb/scanner.c --- a/drivers/usb/scanner.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/scanner.c Mon Aug 5 14:46:58 2002 @@ -747,7 +747,7 @@ case SCANNER_IOCTL_CTRLMSG: { struct ctrlmsg_ioctl { - devrequest req; + struct usb_ctrlrequest req; void *data; } cmsg; int pipe, nb, ret; @@ -756,12 +756,12 @@ if (copy_from_user(&cmsg, (void *)arg, sizeof(cmsg))) return -EFAULT; - nb = le16_to_cpup(&cmsg.req.length); + nb = le16_to_cpup(&cmsg.req.wLength); if (nb > sizeof(buf)) return -EINVAL; - if ((cmsg.req.requesttype & 0x80) == 0) { + if ((cmsg.req.bRequestType & 0x80) == 0) { pipe = usb_sndctrlpipe(dev, 0); if (nb > 0 && copy_from_user(buf, cmsg.data, nb)) return -EFAULT; @@ -769,10 +769,10 @@ pipe = usb_rcvctrlpipe(dev, 0); } - ret = usb_control_msg(dev, pipe, cmsg.req.request, - cmsg.req.requesttype, - le16_to_cpup(&cmsg.req.value), - le16_to_cpup(&cmsg.req.index), + ret = usb_control_msg(dev, pipe, cmsg.req.bRequest, + cmsg.req.bRequestType, + le16_to_cpup(&cmsg.req.wValue), + le16_to_cpup(&cmsg.req.wIndex), buf, nb, HZ); if (ret < 0) { @@ -780,7 +780,7 @@ return -EIO; } - if (nb > 0 && (cmsg.req.requesttype & 0x80) && copy_to_user(cmsg.data, buf, nb)) + if (nb > 0 && (cmsg.req.bRequestType & 0x80) && copy_to_user(cmsg.data, buf, nb)) return -EFAULT; return 0; diff -Nru a/drivers/usb/scanner.h b/drivers/usb/scanner.h --- a/drivers/usb/scanner.h Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/scanner.h Mon Aug 5 14:46:58 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_ctrlrequest ) #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 Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/storage/transport.c Mon Aug 5 14:46:58 2002 @@ -362,19 +362,19 @@ { struct completion urb_done; int status; - devrequest *dr; + struct usb_ctrlrequest *dr; /* allocate the device request structure */ - dr = kmalloc(sizeof(devrequest), GFP_NOIO); + dr = kmalloc(sizeof(struct usb_ctrlrequest), GFP_NOIO); if (!dr) return -ENOMEM; /* fill in the structure */ - dr->requesttype = requesttype; - dr->request = request; - dr->value = cpu_to_le16(value); - dr->index = cpu_to_le16(index); - dr->length = cpu_to_le16(size); + dr->bRequestType = requesttype; + dr->bRequest = request; + dr->wValue = cpu_to_le16(value); + dr->wIndex = cpu_to_le16(index); + dr->wLength = cpu_to_le16(size); /* set up data structures for the wakeup system */ init_completion(&urb_done); diff -Nru a/drivers/usb/uhci.c b/drivers/usb/uhci.c --- a/drivers/usb/uhci.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/uhci.c Mon Aug 5 14:46:58 2002 @@ -649,7 +649,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_ctrlrequest), PCI_DMA_TODEVICE); if (!urbp->setup_packet_dma_handle) return NULL; @@ -724,7 +724,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_ctrlrequest), PCI_DMA_TODEVICE); urbp->setup_packet_dma_handle = 0; } @@ -2073,7 +2073,7 @@ { struct uhci *uhci = (struct uhci *)urb->dev->bus->hcpriv; unsigned int pipe = urb->pipe; - devrequest *cmd = (devrequest *)urb->setup_packet; + struct usb_ctrlrequest *cmd = (struct usb_ctrlrequest *)urb->setup_packet; void *data = urb->transfer_buffer; int leni = urb->transfer_buffer_length; int len = 0; @@ -2096,10 +2096,10 @@ return -EINPROGRESS; } - bmRType_bReq = cmd->requesttype | cmd->request << 8; - wValue = le16_to_cpu(cmd->value); - wIndex = le16_to_cpu(cmd->index); - wLength = le16_to_cpu(cmd->length); + bmRType_bReq = cmd->bRequestType | cmd->bRequest << 8; + wValue = le16_to_cpu(cmd->wValue); + wIndex = le16_to_cpu(cmd->wIndex); + wLength = le16_to_cpu(cmd->wLength); for (i = 0; i < 8; i++) uhci->rh.c_p_r[i] = 0; @@ -2340,7 +2340,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_ctrlrequest), PCI_DMA_TODEVICE); status = urbp->status; if (!resubmit_interrupt || killed) diff -Nru a/drivers/usb/usb-ohci.c b/drivers/usb/usb-ohci.c --- a/drivers/usb/usb-ohci.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/usb-ohci.c Mon Aug 5 14:46:58 2002 @@ -1910,7 +1910,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_ctrlrequest * cmd = (struct usb_ctrlrequest *) urb->setup_packet; void * data = urb->transfer_buffer; int leni = urb->transfer_buffer_length; int len = 0; @@ -1934,10 +1934,10 @@ return 0; } - bmRType_bReq = cmd->requesttype | (cmd->request << 8); - wValue = le16_to_cpu (cmd->value); - wIndex = le16_to_cpu (cmd->index); - wLength = le16_to_cpu (cmd->length); + bmRType_bReq = cmd->bRequestType | (cmd->bRequest << 8); + wValue = le16_to_cpu (cmd->wValue); + wIndex = le16_to_cpu (cmd->wIndex); + wLength = le16_to_cpu (cmd->wLength); switch (bmRType_bReq) { /* Request Destination: diff -Nru a/drivers/usb/usb-uhci.c b/drivers/usb/usb-uhci.c --- a/drivers/usb/usb-uhci.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/usb-uhci.c Mon Aug 5 14:46:58 2002 @@ -1089,7 +1089,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_ctrlrequest), PCI_DMA_TODEVICE); if (urb_priv->transfer_buffer_dma) pci_dma_sync_single(s->uhci_pci, urb_priv->transfer_buffer_dma, @@ -1103,7 +1103,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_ctrlrequest), PCI_DMA_TODEVICE); urb_priv->setup_packet_dma = 0; } if (urb_priv->transfer_buffer_dma) { @@ -1683,7 +1683,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_ctrlrequest), PCI_DMA_TODEVICE); if (urb->transfer_buffer_length) urb_priv->transfer_buffer_dma = pci_map_single(s->uhci_pci, @@ -1966,7 +1966,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_ctrlrequest *cmd = (struct usb_ctrlrequest *) urb->setup_packet; void *data = urb->transfer_buffer; int leni = urb->transfer_buffer_length; int len = 0; @@ -1992,10 +1992,10 @@ } - bmRType_bReq = cmd->requesttype | cmd->request << 8; - wValue = le16_to_cpu (cmd->value); - wIndex = le16_to_cpu (cmd->index); - wLength = le16_to_cpu (cmd->length); + bmRType_bReq = cmd->bRequestType | cmd->bRequest << 8; + wValue = le16_to_cpu (cmd->wValue); + wIndex = le16_to_cpu (cmd->wIndex); + wLength = le16_to_cpu (cmd->wLength); for (i = 0; i < 8; i++) uhci->rh.c_p_r[i] = 0; diff -Nru a/drivers/usb/usb.c b/drivers/usb/usb.c --- a/drivers/usb/usb.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/usb.c Mon Aug 5 14:46:58 2002 @@ -1110,7 +1110,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_ctrlrequest *cmd, void *data, int len, int timeout) { struct urb *urb; int retv; @@ -1154,17 +1154,17 @@ 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_ctrlrequest *dr = kmalloc(sizeof(struct usb_ctrlrequest), GFP_KERNEL); int ret; if (!dr) return -ENOMEM; - dr->requesttype = requesttype; - dr->request = request; - dr->value = cpu_to_le16p(&value); - dr->index = cpu_to_le16p(&index); - dr->length = cpu_to_le16p(&size); + dr->bRequestType = requesttype; + dr->bRequest = request; + dr->wValue = cpu_to_le16p(&value); + dr->wIndex = cpu_to_le16p(&index); + dr->wLength = cpu_to_le16p(&size); //dbg("usb_control_msg"); diff -Nru a/drivers/usb/usbkbd.c b/drivers/usb/usbkbd.c --- a/drivers/usb/usbkbd.c Mon Aug 5 14:46:58 2002 +++ b/drivers/usb/usbkbd.c Mon Aug 5 14:46:58 2002 @@ -71,7 +71,7 @@ unsigned char new[8]; unsigned char old[8]; struct urb irq, led; - devrequest dr; + struct usb_ctrlrequest dr; unsigned char leds, newleds; char name[128]; int open; @@ -215,11 +215,11 @@ FILL_INT_URB(&kbd->irq, dev, pipe, kbd->new, maxp > 8 ? 8 : maxp, usb_kbd_irq, kbd, endpoint->bInterval); - kbd->dr.requesttype = USB_TYPE_CLASS | USB_RECIP_INTERFACE; - kbd->dr.request = USB_REQ_SET_REPORT; - kbd->dr.value = 0x200; - kbd->dr.index = interface->bInterfaceNumber; - kbd->dr.length = 1; + kbd->dr.bRequestType = USB_TYPE_CLASS | USB_RECIP_INTERFACE; + kbd->dr.bRequest = USB_REQ_SET_REPORT; + kbd->dr.wValue = 0x200; + kbd->dr.wIndex = interface->bInterfaceNumber; + kbd->dr.wLength = 1; kbd->dev.name = kbd->name; kbd->dev.idbus = BUS_USB; diff -Nru a/include/linux/usb.h b/include/linux/usb.h --- a/include/linux/usb.h Mon Aug 5 14:46:58 2002 +++ b/include/linux/usb.h Mon Aug 5 14:46:58 2002 @@ -152,13 +152,26 @@ mdelay(ms); } -typedef struct { - __u8 requesttype; - __u8 request; - __u16 value; - __u16 index; - __u16 length; -} devrequest __attribute__ ((packed)); +/** + * struct usb_ctrlrequest - structure used to make USB device control requests easier to create and decode + * @bRequestType: matches the USB bmRequestType field + * @bRequest: matches the USB bRequest field + * @wValue: matches the USB wValue field + * @wIndex: matches the USB wIndex field + * @wLength: matches the USB wLength field + * + * This structure is used to send control 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_ctrlrequest { + __u8 bRequestType; + __u8 bRequest; + __u16 wValue; + __u16 wIndex; + __u16 wLength; +} __attribute__ ((packed)); /* * USB-status codes: @@ -679,7 +692,7 @@ void usb_free_urb (struct urb *urb); int usb_submit_urb(struct urb *urb); int usb_unlink_urb(struct urb *urb); -int usb_internal_control_msg(struct usb_device *usb_dev, unsigned int pipe, devrequest *cmd, void *data, int len, int timeout); +int usb_internal_control_msg(struct usb_device *usb_dev, unsigned int pipe, struct usb_ctrlrequest *cmd, void *data, int len, int timeout); int usb_bulk_msg(struct usb_device *usb_dev, unsigned int pipe, void *data, int len, int *actual_length, int timeout); /*-------------------------------------------------------------------*