Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Mar 2008 00:26:26 GMT
From:      Sam Leffler <sam@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 138572 for review
Message-ID:  <200803260026.m2Q0QQcx034801@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
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 <sys/cdefs.h>
-__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 <akiyama@jp.FreeBSD.org>.
@@ -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 <sys/cdefs.h>
-__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 <sys/param.h>
 #include <sys/systm.h>
@@ -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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803260026.m2Q0QQcx034801>