Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/dev/usb Put the UQ_ASSUME_CM_OVER_DATA quirk back in. W...
details: https://anonhg.NetBSD.org/src/rev/8df509054d38
branches: trunk
changeset: 502100:8df509054d38
user: explorer <explorer%NetBSD.org@localhost>
date: Thu Jan 11 20:35:02 2001 +0000
description:
Put the UQ_ASSUME_CM_OVER_DATA quirk back in. Without it, the Ricochet GS modem fails to work even with the other changes.
diffstat:
sys/dev/usb/umodem.c | 28 ++++++++++++++++------------
sys/dev/usb/usb_quirks.c | 4 ++--
sys/dev/usb/usb_quirks.h | 3 ++-
3 files changed, 20 insertions(+), 15 deletions(-)
diffs (78 lines):
diff -r 96dbdad4f04e -r 8df509054d38 sys/dev/usb/umodem.c
--- a/sys/dev/usb/umodem.c Thu Jan 11 20:27:12 2001 +0000
+++ b/sys/dev/usb/umodem.c Thu Jan 11 20:35:02 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: umodem.c,v 1.35 2000/12/29 01:24:57 augustss Exp $ */
+/* $NetBSD: umodem.c,v 1.36 2001/01/11 20:35:02 explorer Exp $ */
/*
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -259,18 +259,22 @@
goto bad;
}
- if (sc->sc_cm_cap & USB_CDC_CM_OVER_DATA) {
- if (sc->sc_acm_cap & USB_CDC_ACM_HAS_FEATURE)
- err = umodem_set_comm_feature(sc,
- UCDC_ABSTRACT_STATE, UCDC_DATA_MULTIPLEXED);
- else
- err = 0;
- if (err) {
- printf("%s: could not set data multiplex mode\n",
- USBDEVNAME(sc->sc_dev));
- goto bad;
+ if (usbd_get_quirks(sc->sc_udev)->uq_flags & UQ_ASSUME_CM_OVER_DATA) {
+ sc->sc_cm_over_data = 1;
+ } else {
+ if (sc->sc_cm_cap & USB_CDC_CM_OVER_DATA) {
+ if (sc->sc_acm_cap & USB_CDC_ACM_HAS_FEATURE)
+ err = umodem_set_comm_feature(sc,
+ UCDC_ABSTRACT_STATE, UCDC_DATA_MULTIPLEXED);
+ else
+ err = 0;
+ if (err) {
+ printf("%s: could not set data multiplex mode\n",
+ USBDEVNAME(sc->sc_dev));
+ goto bad;
+ }
+ sc->sc_cm_over_data = 1;
}
- sc->sc_cm_over_data = 1;
}
sc->sc_dtr = -1;
diff -r 96dbdad4f04e -r 8df509054d38 sys/dev/usb/usb_quirks.c
--- a/sys/dev/usb/usb_quirks.c Thu Jan 11 20:27:12 2001 +0000
+++ b/sys/dev/usb/usb_quirks.c Thu Jan 11 20:35:02 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: usb_quirks.c,v 1.34 2000/12/28 11:56:23 augustss Exp $ */
+/* $NetBSD: usb_quirks.c,v 1.35 2001/01/11 20:35:02 explorer Exp $ */
/* $FreeBSD: src/sys/dev/usb/usb_quirks.c,v 1.13 1999/11/17 22:33:47 n_hibma Exp $ */
/*
@@ -72,7 +72,7 @@
{ USB_VENDOR_MCT, USB_PRODUCT_MCT_HUB0100, 0x102, { UQ_BUS_POWERED }},
{ USB_VENDOR_MCT, USB_PRODUCT_MCT_USB232, 0x102, { UQ_BUS_POWERED }},
{ USB_VENDOR_METRICOM, USB_PRODUCT_METRICOM_RICOCHET_GS,
- 0x100, { UQ_NO_STRINGS }},
+ 0x100, { UQ_ASSUME_CM_OVER_DATA | UQ_NO_STRINGS }},
{ USB_VENDOR_TI, USB_PRODUCT_TI_UTUSB41, 0x110, { UQ_POWER_CLAIM }},
{ USB_VENDOR_ACERP, USB_PRODUCT_ACERP_ACERSCAN_320U,
0x000, { UQ_NO_STRINGS }},
diff -r 96dbdad4f04e -r 8df509054d38 sys/dev/usb/usb_quirks.h
--- a/sys/dev/usb/usb_quirks.h Thu Jan 11 20:27:12 2001 +0000
+++ b/sys/dev/usb/usb_quirks.h Thu Jan 11 20:35:02 2001 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: usb_quirks.h,v 1.17 2000/12/28 11:56:23 augustss Exp $ */
+/* $NetBSD: usb_quirks.h,v 1.18 2001/01/11 20:35:02 explorer Exp $ */
/* $FreeBSD: src/sys/dev/usb/usb_quirks.h,v 1.9 1999/11/12 23:31:03 n_hibma Exp $ */
/*
@@ -52,6 +52,7 @@
#define UQ_POWER_CLAIM 0x0200 /* hub lies about power status */
#define UQ_AU_NO_FRAC 0x0400 /* don't adjust for fractional samples */
#define UQ_AU_INP_ASYNC 0x0800 /* input is async despite claim of adaptive */
+#define UQ_ASSUME_CM_OVER_DATA 0x1000 /* modem device breaks on cm over data */
};
extern struct usbd_quirks usbd_no_quirk;
Home |
Main Index |
Thread Index |
Old Index