diff options
author | 2019-03-22 12:04:25 +0000 | |
---|---|---|
committer | 2019-03-22 12:04:25 +0000 | |
commit | dd5672925edcb2bc9c95fdbbdb2fae8245aaec3e (patch) | |
tree | 58bf027d2c369cc22eff65036f1e32a01939a4dd | |
parent | sync (diff) | |
download | wireguard-openbsd-dd5672925edcb2bc9c95fdbbdb2fae8245aaec3e.tar.xz wireguard-openbsd-dd5672925edcb2bc9c95fdbbdb2fae8245aaec3e.zip |
support Meinberg DCF600USB, from weerd@, ok phessler
-rw-r--r-- | share/man/man4/umbg.4 | 6 | ||||
-rw-r--r-- | sys/dev/usb/umbg.c | 21 |
2 files changed, 20 insertions, 7 deletions
diff --git a/share/man/man4/umbg.4 b/share/man/man4/umbg.4 index 24db381c574..6627519862f 100644 --- a/share/man/man4/umbg.4 +++ b/share/man/man4/umbg.4 @@ -1,4 +1,4 @@ -.\" $OpenBSD: umbg.4,v 1.4 2013/07/16 16:05:49 schwarze Exp $ +.\" $OpenBSD: umbg.4,v 1.5 2019/03/22 12:04:25 sthen Exp $ .\" .\" Copyright (c) 2007 Marc Balmer <mbalmer@openbsd.org> .\" @@ -14,12 +14,12 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: July 16 2013 $ +.Dd $Mdocdate: March 22 2019 $ .Dt UMBG 4 .Os .Sh NAME .Nm umbg -.Nd Meinberg Funkuhren USB5131 timedelta sensor +.Nd Meinberg Funkuhren USB5131 and DCF600USB timedelta sensors .Sh SYNOPSIS .Cd "umbg* at uhub?" .Sh DESCRIPTION diff --git a/sys/dev/usb/umbg.c b/sys/dev/usb/umbg.c index b60b9246d50..debab3e7c81 100644 --- a/sys/dev/usb/umbg.c +++ b/sys/dev/usb/umbg.c @@ -1,4 +1,4 @@ -/* $OpenBSD: umbg.c,v 1.25 2017/12/30 20:47:00 guenther Exp $ */ +/* $OpenBSD: umbg.c,v 1.26 2019/03/22 12:04:25 sthen Exp $ */ /* * Copyright (c) 2007 Marc Balmer <mbalmer@openbsd.org> @@ -156,8 +156,9 @@ umbg_match(struct device *parent, void *match, void *aux) if (uaa->iface == NULL) return UMATCH_NONE; - return uaa->vendor == USB_VENDOR_MEINBERG && - uaa->product == USB_PRODUCT_MEINBERG_USB5131 ? + return uaa->vendor == USB_VENDOR_MEINBERG && ( + uaa->product == USB_PRODUCT_MEINBERG_USB5131 || + uaa->product == USB_PRODUCT_MEINBERG_DCF600USB) ? UMATCH_VENDOR_PRODUCT : UMATCH_NONE; } @@ -172,6 +173,7 @@ umbg_attach(struct device *parent, struct device *self, void *aux) usb_endpoint_descriptor_t *ed; usbd_status err; int signal; + const char *desc; #ifdef UMBG_DEBUG char fw_id[MBG_ID_LEN]; #endif @@ -182,7 +184,18 @@ umbg_attach(struct device *parent, struct device *self, void *aux) sc->sc_timedelta.type = SENSOR_TIMEDELTA; sc->sc_timedelta.status = SENSOR_S_UNKNOWN; - strlcpy(sc->sc_timedelta.desc, "USB5131", + + switch (uaa->product) { + case USB_PRODUCT_MEINBERG_DCF600USB: + desc = "DCF600USB"; + break; + case USB_PRODUCT_MEINBERG_USB5131: + desc = "USB5131"; + break; + default: + desc = "Unspecified Radio clock"; + } + strlcpy(sc->sc_timedelta.desc, desc, sizeof(sc->sc_timedelta.desc)); sensor_attach(&sc->sc_sensordev, &sc->sc_timedelta); |