Greg: The updates needed for proper altsetting handling among the USB serial drivers turned out to be a lot easier than I expected, thanks to the organization of the drivers. Only a handful of changes were needed.
Alan Stern ===== drivers/usb/serial/io_ti.c 1.42 vs edited ===== --- 1.42/drivers/usb/serial/io_ti.c Thu Apr 15 12:22:39 2004 +++ edited/drivers/usb/serial/io_ti.c Mon Apr 26 14:38:00 2004 @@ -995,7 +995,7 @@ if (status) return status; - interface = &serial->serial->dev->config->interface[0]->altsetting->desc; + interface = &serial->serial->interface->cur_altsetting->desc; if (!interface) { dev_err (&serial->serial->dev->dev, "%s - no interface set, error!", __FUNCTION__); return -ENODEV; ===== drivers/usb/serial/kobil_sct.c 1.28 vs edited ===== --- 1.28/drivers/usb/serial/kobil_sct.c Thu Apr 15 12:22:39 2004 +++ edited/drivers/usb/serial/kobil_sct.c Mon Apr 26 14:38:00 2004 @@ -183,7 +183,7 @@ pdev = serial->dev; actconfig = pdev->actconfig; interface = actconfig->interface[0]; - altsetting = interface->altsetting; + altsetting = interface->cur_altsetting; endpoint = altsetting->endpoint; for (i = 0; i < altsetting->desc.bNumEndpoints; i++) { ===== drivers/usb/serial/safe_serial.c 1.25 vs edited ===== --- 1.25/drivers/usb/serial/safe_serial.c Tue Mar 9 20:19:48 2004 +++ edited/drivers/usb/serial/safe_serial.c Mon Apr 26 14:38:00 2004 @@ -395,7 +395,7 @@ static int safe_startup (struct usb_serial *serial) { - switch (serial->interface->altsetting->desc.bInterfaceProtocol) { + switch (serial->interface->cur_altsetting->desc.bInterfaceProtocol) { case LINEO_SAFESERIAL_CRC: break; case LINEO_SAFESERIAL_CRC_PADDED: ===== drivers/usb/serial/usb-serial.c 1.128 vs edited ===== --- 1.128/drivers/usb/serial/usb-serial.c Wed Mar 17 14:16:51 2004 +++ edited/drivers/usb/serial/usb-serial.c Mon Apr 26 14:38:00 2004 @@ -1037,7 +1037,7 @@ (dev->descriptor.idProduct == ATEN_PRODUCT_ID))) { if (interface != dev->actconfig->interface[0]) { /* check out the endpoints of the other interface*/ - iface_desc = &dev->actconfig->interface[0]->altsetting[0]; + iface_desc = &dev->actconfig->interface[0]->cur_altsetting; for (i = 0; i < iface_desc->desc.bNumEndpoints; ++i) { endpoint = &iface_desc->endpoint[i].desc; if ((endpoint->bEndpointAddress & 0x80) && ------------------------------------------------------- This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek For a limited time only, get FREE Ground shipping on all orders of $35 or more. Hurry up and shop folks, this offer expires April 30th! http://www.thinkgeek.com/freeshipping/?cpg=12297 _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel