diff options
Diffstat (limited to 'sys/dev/usb/umodem.c')
-rw-r--r-- | sys/dev/usb/umodem.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/sys/dev/usb/umodem.c b/sys/dev/usb/umodem.c index ca0c781..3cbfa0d 100644 --- a/sys/dev/usb/umodem.c +++ b/sys/dev/usb/umodem.c @@ -229,9 +229,7 @@ USB_ATTACH(umodem) usb_endpoint_descriptor_t *ed; usb_cdc_cm_descriptor_t *cmd; char devinfo[1024]; -#if 0 usbd_status err; -#endif int data_ifaceno; int i; struct tty *tp; @@ -312,15 +310,17 @@ USB_ATTACH(umodem) goto bad; } -#if 0 - if (sc->sc_cm_cap & USB_CDC_CM_OVER_DATA) { - err = umodem_set_comm_feature(sc, UCDC_ABSTRACT_STATE, - UCDC_DATA_MULTIPLEXED); - if (err) - 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) { + err = umodem_set_comm_feature(sc, UCDC_ABSTRACT_STATE, + UCDC_DATA_MULTIPLEXED); + if (err) + goto bad; + sc->sc_cm_over_data = 1; + } } -#endif #if defined(__NetBSD__) || defined(__OpenBSD__) sc->sc_tty = tp = ttymalloc(); |