From owner-p4-projects@FreeBSD.ORG Wed Mar 26 00:26:27 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 577F4106566C; Wed, 26 Mar 2008 00:26:27 +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 15EFD106566B for ; Wed, 26 Mar 2008 00:26:27 +0000 (UTC) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id D5A428FC1E for ; Wed, 26 Mar 2008 00:26:26 +0000 (UTC) (envelope-from sam@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 m2Q0QQSS034803 for ; Wed, 26 Mar 2008 00:26:26 GMT (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id m2Q0QQcx034801 for perforce@freebsd.org; Wed, 26 Mar 2008 00:26:26 GMT (envelope-from sam@freebsd.org) Date: Wed, 26 Mar 2008 00:26:26 GMT Message-Id: <200803260026.m2Q0QQcx034801@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Cc: Subject: PERFORCE change 138572 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, 26 Mar 2008 00:26:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=138572 Change 138572 by sam@sam_ebb on 2008/03/26 00:25:45 IFC Affected files ... .. //depot/projects/vap/contrib/wpa_supplicant/main.c#6 integrate .. //depot/projects/vap/contrib/wpa_supplicant/wpa_supplicant.c#6 integrate .. //depot/projects/vap/sys/dev/usb/ucom.c#7 edit .. //depot/projects/vap/sys/dev/usb/ucomvar.h#5 edit .. //depot/projects/vap/sys/dev/usb/usbdevs#11 edit .. //depot/projects/vap/sys/kern/subr_taskqueue.c#6 integrate .. //depot/projects/vap/sys/sys/taskqueue.h#7 integrate Differences ... ==== //depot/projects/vap/contrib/wpa_supplicant/main.c#6 (text) ==== @@ -11,7 +11,7 @@ * * See README and COPYING for more details. * - * $FreeBSD: src/contrib/wpa_supplicant/main.c,v 1.3 2008/03/24 19:57:51 sam Exp $ + * $FreeBSD: src/contrib/wpa_supplicant/main.c,v 1.4 2008/03/25 21:47:03 sam Exp $ */ #include "includes.h" ==== //depot/projects/vap/contrib/wpa_supplicant/wpa_supplicant.c#6 (text+ko) ==== @@ -14,7 +14,7 @@ * This file implements functions for registering and unregistering * %wpa_supplicant interfaces. In addition, this file contains number of * functions for managing network connections. - * $FreeBSD: src/contrib/wpa_supplicant/wpa_supplicant.c,v 1.5 2008/03/24 19:57:51 sam Exp $ + * $FreeBSD: src/contrib/wpa_supplicant/wpa_supplicant.c,v 1.6 2008/03/25 21:47:03 sam Exp $ */ #include "includes.h" ==== //depot/projects/vap/sys/dev/usb/ucom.c#7 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/ucom.c,v 1.65 2008/02/24 12:16:01 akiyama Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/ucom.c,v 1.66 2008/03/25 23:46:24 sam Exp $"); /*- * Copyright (c) 1998, 2000 The NetBSD Foundation, Inc. @@ -161,13 +161,10 @@ } int -ucom_attach(struct ucom_softc *sc) +ucom_attach_tty(struct ucom_softc *sc, int flags, char* fmt, int unit) { struct tty *tp; - int unit; - unit = device_get_unit(sc->sc_dev); - sc->sc_tty = tp = ttyalloc(); tp->t_sc = sc; tp->t_oproc = ucomstart; @@ -179,10 +176,18 @@ tp->t_modem = ucommodem; tp->t_ioctl = ucomioctl; - DPRINTF(("ucom_attach: tty_attach tp = %p\n", tp)); + return ttycreate(tp, flags, fmt, unit); +} + +int +ucom_attach(struct ucom_softc *sc) +{ + + ucom_attach_tty(sc, TS_CALLOUT, + "U%d", device_get_unit(sc->sc_dev)); - ttycreate(tp, TS_CALLOUT, "U%d", unit); - DPRINTF(("ucom_attach: ttycreate: ttyU%d\n", unit)); + DPRINTF(("ucom_attach: ttycreate: tp = %p, %s\n", + sc->sc_tty, sc->sc_tty->t_dev->si_name)); return (0); } ==== //depot/projects/vap/sys/dev/usb/ucomvar.h#5 (text+ko) ==== @@ -1,5 +1,5 @@ /* $NetBSD: ucomvar.h,v 1.9 2001/01/23 21:56:17 augustss Exp $ */ -/* $FreeBSD: src/sys/dev/usb/ucomvar.h,v 1.9 2007/06/12 17:30:54 imp Exp $ */ +/* $FreeBSD: src/sys/dev/usb/ucomvar.h,v 1.10 2008/03/25 23:46:24 sam Exp $ */ /*- * Copyright (c) 2001-2002, Shunsuke Akiyama . @@ -159,6 +159,7 @@ extern devclass_t ucom_devclass; +int ucom_attach_tty(struct ucom_softc *, int, char*, int); int ucom_attach(struct ucom_softc *); int ucom_detach(struct ucom_softc *); void ucom_status_change(struct ucom_softc *); ==== //depot/projects/vap/sys/dev/usb/usbdevs#11 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/sys/dev/usb/usbdevs,v 1.343 2008/03/20 05:05:37 kevlo Exp $ +$FreeBSD: src/sys/dev/usb/usbdevs,v 1.344 2008/03/25 23:35:32 sam Exp $ /* $NetBSD: usbdevs,v 1.392 2004/12/29 08:38:44 imp Exp $ */ /*- @@ -579,6 +579,7 @@ vendor CISCOLINKSYS 0x13b1 Cisco-Linksys vendor SHARK 0x13d2 Shark vendor NOVATEL 0x1410 Novatel Wireless +vendor MERLIN 0x1416 Merlin vendor WISTRONNEWEB 0x1435 Wistron NeWeb vendor RADIOSHACK 0x1453 Radio Shack vendor HUAWEI3COM 0x1472 Huawei-3Com @@ -1783,9 +1784,16 @@ /* Novatel Wireless products */ product NOVATEL CDMA_MODEM 0x1110 Novatel Wireless Merlin CDMA +product NOVATEL V620 0x1110 Merlin V620 +product NOVATEL V720 0x1130 Merlin V720 product NOVATEL U740 0x1400 Merlin U740 +product NOVATEL U720 0x2110 Merlin U720 +product NOVATEL U727 0x4100 Merlin U727 CDMA product NOVATEL2 FLEXPACKGPS 0x0100 NovAtel FlexPack GPS receiver +/* Merlin products */ +product MERLIN V620 0x1110 Merlin V620 + /* Olympus products */ product OLYMPUS C1 0x0102 C-1 Digital Camera product OLYMPUS C700 0x0105 C-700 Ultra Zoom @@ -2043,6 +2051,7 @@ /* Sierra Wireless products */ product SIERRA AIRCARD580 0x0112 Sierra Wireless AirCard 580 product SIERRA MC5720 0x0218 MC5720 Wireless Modem +product SIERRA AC875U 0x6812 AC875U HSDPA USB Modem /* Sigmatel products */ product SIGMATEL I_BEAD100 0x8008 i-Bead 100 MP3 Player ==== //depot/projects/vap/sys/kern/subr_taskqueue.c#6 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_taskqueue.c,v 1.40 2007/10/20 23:23:21 julian Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_taskqueue.c,v 1.41 2008/03/25 22:38:45 scottl Exp $"); #include #include @@ -63,6 +63,8 @@ }; #define TQ_FLAGS_ACTIVE (1 << 0) +#define TQ_FLAGS_BLOCKED (1 << 1) +#define TQ_FLAGS_PENDING (1 << 2) static __inline void TQ_LOCK(struct taskqueue *tq) @@ -224,7 +226,10 @@ } task->ta_pending = 1; - queue->tq_enqueue(queue->tq_context); + if ((queue->tq_flags & TQ_FLAGS_BLOCKED) == 0) + queue->tq_enqueue(queue->tq_context); + else + queue->tq_flags |= TQ_FLAGS_PENDING; TQ_UNLOCK(queue); @@ -232,6 +237,28 @@ } void +taskqueue_block(struct taskqueue *queue) +{ + + TQ_LOCK(queue); + queue->tq_flags |= TQ_FLAGS_BLOCKED; + TQ_UNLOCK(queue); +} + +void +taskqueue_unblock(struct taskqueue *queue) +{ + + TQ_LOCK(queue); + queue->tq_flags &= ~TQ_FLAGS_BLOCKED; + if (queue->tq_flags & TQ_FLAGS_PENDING) { + queue->tq_flags &= ~TQ_FLAGS_PENDING; + queue->tq_enqueue(queue->tq_context); + } + TQ_UNLOCK(queue); +} + +void taskqueue_run(struct taskqueue *queue) { struct task *task; ==== //depot/projects/vap/sys/sys/taskqueue.h#7 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/sys/taskqueue.h,v 1.17 2008/03/16 10:58:01 rwatson Exp $ + * $FreeBSD: src/sys/sys/taskqueue.h,v 1.18 2008/03/25 22:38:44 scottl Exp $ */ #ifndef _SYS_TASKQUEUE_H_ @@ -58,6 +58,8 @@ struct taskqueue *taskqueue_find(const char *name); void taskqueue_free(struct taskqueue *queue); void taskqueue_run(struct taskqueue *queue); +void taskqueue_block(struct taskqueue *queue); +void taskqueue_unblock(struct taskqueue *queue); /* * Functions for dedicated thread taskqueues