From owner-p4-projects@FreeBSD.ORG Wed Jan 9 21:58:06 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3C61A16A421; Wed, 9 Jan 2008 21:58:06 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0218D16A41A for ; Wed, 9 Jan 2008 21:58:06 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id EC8F913C4CC for ; Wed, 9 Jan 2008 21:58:05 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m09Lw5og049208 for ; Wed, 9 Jan 2008 21:58:05 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m09Lw5fP049205 for perforce@freebsd.org; Wed, 9 Jan 2008 21:58:05 GMT (envelope-from hselasky@FreeBSD.org) Date: Wed, 9 Jan 2008 21:58:05 GMT Message-Id: <200801092158.m09Lw5fP049205@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 132920 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Jan 2008 21:58:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=132920 Change 132920 by hselasky@hselasky_laptop001 on 2008/01/09 21:57:42 Follow up commit - make "bufsize", "frames" and "interval" mode specific. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#103 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#103 (text+ko) ==== @@ -370,7 +370,6 @@ MIN_PKT = 8, }; struct usbd_xfer *xfer = parm->curr_xfer; - const struct usbd_config *setup = parm->curr_setup; const struct usbd_config_sub *setup_sub = parm->curr_setup_sub; usb_endpoint_descriptor_t *edesc; struct usbd_std_packet_size std_size; @@ -393,16 +392,16 @@ type = (edesc->bmAttributes & UE_XFERTYPE); xfer->flags = setup_sub->flags; - xfer->nframes = setup->frames; + xfer->nframes = setup_sub->frames; xfer->timeout = setup_sub->timeout; xfer->callback = setup_sub->callback; - xfer->interval = setup->interval; + xfer->interval = setup_sub->interval; xfer->endpoint = edesc->bEndpointAddress; xfer->max_packet_size = UGETW(edesc->wMaxPacketSize); xfer->max_packet_count = 1; xfer->flags_int.usb_mode = parm->udev->flags.usb_mode; /* make a shadow copy */ - parm->bufsize = setup->bufsize; + parm->bufsize = setup_sub->bufsize; if (parm->speed == USB_SPEED_HIGH) { xfer->max_packet_count += (xfer->max_packet_size >> 11) & 3; @@ -793,7 +792,8 @@ /* sanity checks */ for (setup = setup_start, n = 0; setup != setup_end; setup++, n++) { - if (setup->bufsize == 0xffffffff) { + if ((setup->mh.bufsize == 0xffffffff) || + (setup->md.bufsize == 0xffffffff)) { parm.err = USBD_ERR_BAD_BUFSIZE; PRINTF(("invalid bufsize\n")); } @@ -3480,9 +3480,10 @@ .type = UE_CONTROL, .endpoint = 0x00, /* Control endpoint */ .direction = UE_DIR_ANY, - .bufsize = 1024, /* bytes */ + .mh.bufsize = 1024, /* bytes */ .mh.flags = {.proxy_buffer = 1,.short_xfer_ok = 1,}, .mh.callback = &usbd_do_request_callback, + .md.bufsize = 1024, /* bytes */ .md.flags = {.proxy_buffer = 1,.short_xfer_ok = 0,}, .md.callback = &usbd_handle_request_callback, },