From owner-p4-projects@FreeBSD.ORG Fri Dec 28 22:01:26 2007 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0ED4816A477; Fri, 28 Dec 2007 22:01:26 +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 C884316A475 for ; Fri, 28 Dec 2007 22:01:25 +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 C8C2B13C4CC for ; Fri, 28 Dec 2007 22:01:25 +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 lBSM1POB006381 for ; Fri, 28 Dec 2007 22:01:25 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBSM1PxI006378 for perforce@freebsd.org; Fri, 28 Dec 2007 22:01:25 GMT (envelope-from hselasky@FreeBSD.org) Date: Fri, 28 Dec 2007 22:01:25 GMT Message-Id: <200712282201.lBSM1PxI006378@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 131915 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: Fri, 28 Dec 2007 22:01:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=131915 Change 131915 by hselasky@hselasky_laptop001 on 2007/12/28 22:00:38 Style change by "usb_style.sh" and some manual editing. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/if_cdce.c#41 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/if_cdce.c#41 (text+ko) ==== @@ -340,21 +340,25 @@ /* * - * The Data Class interface of a networking device shall have a minimum - * of two interface settings. The first setting (the default interface - * setting) includes no endpoints and therefore no networking traffic is - * exchanged whenever the default interface setting is selected. One or - * more additional interface settings are used for normal operation, and - * therefore each includes a pair of endpoints (one IN, and one OUT) to - * exchange network traffic. Select an alternate interface setting to - * initialize the network aspects of the device and to enable the - * exchange of network traffic. + * + * The Data Class interface of a networking device shall have + * a minimum of two interface settings. The first setting + * (the default interface setting) includes no endpoints and + * therefore no networking traffic is exchanged whenever the + * default interface setting is selected. One or more + * additional interface settings are used for normal + * operation, and therefore each includes a pair of endpoints + * (one IN, and one OUT) to exchange network traffic. Select + * an alternate interface setting to initialize the network + * aspects of the device and to enable the exchange of + * network traffic. + * * * - * Some devices, most notably cable modems, include interface settings - * that have no IN or OUT endpoint, therefore loop through the list of all - * available interface settings looking for one with both IN and OUT - * endpoints. + * Some devices, most notably cable modems, include interface + * settings that have no IN or OUT endpoint, therefore loop + * through the list of all available interface settings + * looking for one with both IN and OUT endpoints. */ alloc_transfers: @@ -581,7 +585,7 @@ switch (USBD_GET_STATE(xfer)) { case USBD_ST_TRANSFERRED: DPRINTF(sc, 10, "transfer complete: " - "%u bytes in %u frames\n", xfer->actlen, + "%u bytes in %u frames\n", xfer->actlen, xfer->aframes); ifp->if_opackets++; @@ -593,99 +597,99 @@ usbd_transfer_start(sc->sc_xfer[2]); goto done; } - #ifdef CDCE_MF_ENABLE - x = 1; + x = 1; #else - x = 0; + x = 0; #endif while (x != CDCE_ETH_FRAMES_MAX) { - IFQ_DRV_DEQUEUE(&(ifp->if_snd), m); + IFQ_DRV_DEQUEUE(&(ifp->if_snd), m); - if (m == NULL) { + if (m == NULL) { #ifdef CDCE_DO_BENCHMARK - /* send dummy ethernet frames */ - usbd_set_frame_data(xfer, &(sc->sc_rx_dump), x); - xfer->frlengths[x] = (sizeof(sc->sc_rx_dump) / 2) + - (x & 63) - 1; - x++; - continue; + /* send dummy ethernet frames */ + usbd_set_frame_data(xfer, + &(sc->sc_rx_dump), x); + xfer->frlengths[x] = + (sizeof(sc->sc_rx_dump) / 2) + (x & 63) - 1; + x++; + continue; #else - break; + break; #endif - } + } + if (m->m_pkthdr.len < sizeof(struct ether_header)) { + /* + * frames of this size have special meaning + * - filter away + */ + m_freem(m); + ifp->if_oerrors++; + continue; + } + if (sc->sc_flags & CDCE_FLAG_ZAURUS) { + /* + * Zaurus wants a 32-bit CRC appended to + * every frame + */ - if (m->m_pkthdr.len < sizeof(struct ether_header)) { - /* frames of this size have special meaning - filter away */ - m_freem(m); - ifp->if_oerrors++; - continue; - } + crc = cdce_m_crc32(m, 0, m->m_pkthdr.len); + crc = htole32(crc); - if (sc->sc_flags & CDCE_FLAG_ZAURUS) { - /* Zaurus wants a 32-bit CRC appended to every frame */ - - crc = cdce_m_crc32(m, 0, m->m_pkthdr.len); - crc = htole32(crc); - - if (!m_append(m, 4, (void *)&crc)) { - m_freem(m); - ifp->if_oerrors++; - continue; + if (!m_append(m, 4, (void *)&crc)) { + m_freem(m); + ifp->if_oerrors++; + continue; + } + m->m_pkthdr.len += 4; + } + if (m->m_pkthdr.len > MCLBYTES) { + m->m_pkthdr.len = MCLBYTES; + } + m = m_pullup(m, m->m_pkthdr.len); + if (m == NULL) { + ifp->if_oerrors++; + continue; } + sc->sc_tx_mbufs[x] = m; - m->m_pkthdr.len += 4; - } + xfer->frlengths[x] = m->m_len; - if (m->m_pkthdr.len > MCLBYTES) { - m->m_pkthdr.len = MCLBYTES; - } + usbd_set_frame_data(xfer, m->m_data, x); - m = m_pullup(m, m->m_pkthdr.len); - if (m == NULL) { - ifp->if_oerrors++; - continue; - } + /* + * if there's a BPF listener, bounce a copy + * of this frame to him: + */ + BPF_MTAP(ifp, m); - sc->sc_tx_mbufs[x] = m; - - xfer->frlengths[x] = m->m_len; - - usbd_set_frame_data(xfer, m->m_data, x); - - /* - * if there's a BPF listener, bounce a copy - * of this frame to him: - */ - BPF_MTAP(ifp, m); - - x++; + x++; } xfer->nframes = x; #ifdef CDCE_MF_ENABLE - if (x == 1) { - /* nothing to do */ - goto done; - } - /* fill out the Multi Frame header */ - usbd_set_frame_data(xfer, &(sc->sc_tx_eth.hdr), 0); - xfer->frlengths[0] = sizeof(sc->sc_tx_eth.hdr); - sc->sc_tx_eth.hdr.bSig0[0] = 'M'; - sc->sc_tx_eth.hdr.bSig0[1] = 'F'; - x--; - /* tell the peer how many frames are coming */ - x += ifp->if_snd.ifq_drv_len; - USETDW(sc->sc_tx_eth.hdr.dwFramesAhead, x); - x = ~x; - USETDW(sc->sc_tx_eth.hdr.dwFramesAheadInverse, x); + if (x == 1) { + /* nothing to do */ + goto done; + } + /* fill out the Multi Frame header */ + usbd_set_frame_data(xfer, &(sc->sc_tx_eth.hdr), 0); + xfer->frlengths[0] = sizeof(sc->sc_tx_eth.hdr); + sc->sc_tx_eth.hdr.bSig0[0] = 'M'; + sc->sc_tx_eth.hdr.bSig0[1] = 'F'; + x--; + /* tell the peer how many frames are coming */ + x += ifp->if_snd.ifq_drv_len; + USETDW(sc->sc_tx_eth.hdr.dwFramesAhead, x); + x = ~x; + USETDW(sc->sc_tx_eth.hdr.dwFramesAheadInverse, x); #else - if (x == 0) { - /* nothing to do */ - goto done; - } + if (x == 0) { + /* nothing to do */ + goto done; + } #endif usbd_start_hardware(xfer); @@ -792,7 +796,8 @@ case SIOCSIFMEDIA: case SIOCGIFMEDIA: - error = ifmedia_ioctl(ifp, (void *)data, &sc->sc_ifmedia, command); + error = ifmedia_ioctl(ifp, (void *)data, + &sc->sc_ifmedia, command); break; default: @@ -851,7 +856,7 @@ static void cdce_bulk_read_callback(struct usbd_xfer *xfer) { - struct cdce_mq mq = { NULL, NULL, 0 }; + struct cdce_mq mq = {NULL, NULL, 0}; struct cdce_softc *sc = xfer->priv_sc; struct ifnet *ifp = sc->sc_ifp; struct mbuf *m; @@ -864,67 +869,76 @@ case USBD_ST_TRANSFERRED: DPRINTF(sc, 0, "received %u bytes in %u frames\n", - xfer->actlen, xfer->aframes); + xfer->actlen, xfer->aframes); for (x = 0; x != xfer->nframes; x++) { - if (sc->sc_flags & CDCE_FLAG_ZAURUS) { + if (sc->sc_flags & CDCE_FLAG_ZAURUS) { - /* Strip off CRC added by Zaurus */ - if (xfer->frlengths[x] >= MAX(4,14)) { - xfer->frlengths[x] -= 4; + /* Strip off CRC added by Zaurus */ + if (xfer->frlengths[x] >= MAX(4, 14)) { + xfer->frlengths[x] -= 4; + } + } + m = sc->sc_rx_mbufs[x]; + sc->sc_rx_mbufs[x] = NULL; + if (m == NULL) { + continue; } - } - - m = sc->sc_rx_mbufs[x]; - sc->sc_rx_mbufs[x] = NULL; - if (m == NULL) { - continue; - } + if (xfer->frlengths[x] < sizeof(struct ether_header)) { - if (xfer->frlengths[x] < sizeof(struct ether_header)) { - #ifdef CDCE_MF_ENABLE - if (xfer->frlengths[x] >= CDC_MF_ETH_HEADER_SIZE) { + if (xfer->frlengths[x] >= + CDC_MF_ETH_HEADER_SIZE) { - mf_hdr = (void *)(m->m_data); + mf_hdr = (void *)(m->m_data); - /* decode and verify multi frame header */ + /* + * decode and verify the multi + * frame header + */ - ta = UGETDW(mf_hdr->dwFramesAhead); - tb = UGETDW(mf_hdr->dwFramesAheadInverse); - tb ^= ta; + ta = UGETDW(mf_hdr->dwFramesAhead); + tb = UGETDW(mf_hdr->dwFramesAheadInverse); + tb ^= ta; - DPRINTF(sc, 0, "ta = 0x%08x, tb = 0x%08x\n", ta, tb); + DPRINTF(sc, 0, "ta = 0x%08x, " + "tb = 0x%08x\n", ta, tb); - /* check if we have a multi frame header */ - if ((tb == 0xFFFFFFFF) && - (mf_hdr->bSig0[0] == 'M') && - (mf_hdr->bSig0[1] == 'F')) { + /* + * check if we have a multi frame + * header + */ + if ((tb == 0xFFFFFFFF) && + (mf_hdr->bSig0[0] == 'M') && + (mf_hdr->bSig0[1] == 'F')) { - DPRINTF(sc, 0, "frames ahead " - "= %u\n", ta); + DPRINTF(sc, 0, "frames ahead " + "= %u\n", ta); - sc->sc_rx_frames_ahead = ta; - } - } + sc->sc_rx_frames_ahead = ta; + } + } #endif - m_freem(m); - continue; - } else { - /* we received a frame - decrement frames ahead */ - if (sc->sc_rx_frames_ahead) { - sc->sc_rx_frames_ahead--; - } - } + m_freem(m); + continue; + } else { + /* + * we received a frame - decrement frames + * ahead + */ + if (sc->sc_rx_frames_ahead) { + sc->sc_rx_frames_ahead--; + } + } - ifp->if_ipackets++; - m->m_pkthdr.rcvif = ifp; - m->m_pkthdr.len = m->m_len = xfer->frlengths[x]; + ifp->if_ipackets++; + m->m_pkthdr.rcvif = ifp; + m->m_pkthdr.len = m->m_len = xfer->frlengths[x]; - /* enqueue */ - _IF_ENQUEUE(&(mq), m); + /* enqueue */ + _IF_ENQUEUE(&(mq), m); } case USBD_ST_SETUP: @@ -934,58 +948,54 @@ /* reset number of frames ahead */ sc->sc_rx_frames_ahead = 0; - if (xfer->flags_int.usb_mode == USB_MODE_HOST) { - usbd_transfer_start(sc->sc_xfer[3]); - /* - * In case the "stall_pipe" flag was set - * while transferring data, we need to go - * to the "tr_if_input" afterwards! - */ - goto tr_if_input; - } - } - + if (xfer->flags_int.usb_mode == USB_MODE_HOST) { + usbd_transfer_start(sc->sc_xfer[3]); + /* + * In case the "stall_pipe" flag was set + * while transferring data, we need to go to + * the "tr_if_input" afterwards! + */ + goto tr_if_input; + } + } /* setup a new USB transfer chain */ - ta = sc->sc_rx_frames_ahead; + ta = sc->sc_rx_frames_ahead; - if (ta == 0) { - /* always receive at least one frame */ - ta = 1; - } - - if (ta > CDCE_ETH_FRAMES_MAX) { - ta = CDCE_ETH_FRAMES_MAX; - } - - for (x = 0; x != ta; x++) { + if (ta == 0) { + /* always receive at least one frame */ + ta = 1; + } + if (ta > CDCE_ETH_FRAMES_MAX) { + ta = CDCE_ETH_FRAMES_MAX; + } + for (x = 0; x != ta; x++) { m = usbd_ether_get_mbuf(); if (m == NULL) { - break; + break; } - usbd_set_frame_data(xfer, m->m_data, x); xfer->frlengths[x] = m->m_len; sc->sc_rx_mbufs[x] = m; - } + } - for ( ; x != ta; x++) { + for (; x != ta; x++) { - /* - * We are out of mbufs and need to dump all - * the received data ! + /* + * We are out of mbufs and need to dump all the + * received data ! */ usbd_set_frame_data(xfer, &(sc->sc_rx_dump), x); xfer->frlengths[x] = sizeof(sc->sc_rx_dump); - } - xfer->nframes = ta; - usbd_start_hardware(xfer); + } + xfer->nframes = ta; + usbd_start_hardware(xfer); /* - * At the end of a USB callback it is always safe to unlock - * the private mutex of a device! That is why we do the - * "if_input" here, and not some lines up! + * At the end of a USB callback it is always safe to + * unlock the private mutex of a device! That is why + * we do the "if_input" here, and not some lines up! * * By safe we mean that if "usbd_transfer_stop()" is * called, we will get a callback having the error