summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2009-12-16 21:41:30 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2009-12-16 21:41:30 +0000
commitb75821a3d434ed4b7e566053a35764e314adf6ef (patch)
tree9124fd435806cfca5d37610287a688841abc4514 /sys/dev
parentc9c59515b52b897c19794ed58aaf4cd28e6e7a01 (diff)
Support OpenRD JTAGKey, expect spip the jtag interface port.
from Tobias Ulmer; ok jsg
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/usb/uftdi.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/dev/usb/uftdi.c b/sys/dev/usb/uftdi.c
index 98b3bb76ceb..5e990e8d8f1 100644
--- a/sys/dev/usb/uftdi.c
+++ b/sys/dev/usb/uftdi.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uftdi.c,v 1.54 2009/10/13 19:33:17 pirofti Exp $ */
+/* $OpenBSD: uftdi.c,v 1.55 2009/12/16 21:41:29 deraadt Exp $ */
/* $NetBSD: uftdi.c,v 1.14 2003/02/23 04:20:07 simonb Exp $ */
/*
@@ -261,6 +261,7 @@ static const struct usb_devno uftdi_devs[] = {
{ USB_VENDOR_FTDI, USB_PRODUCT_FTDI_OPENPORT_13M },
{ USB_VENDOR_FTDI, USB_PRODUCT_FTDI_OPENPORT_13S },
{ USB_VENDOR_FTDI, USB_PRODUCT_FTDI_OPENPORT_13U },
+ { USB_VENDOR_FTDI, USB_PRODUCT_FTDI_OPENRD },
{ USB_VENDOR_FTDI, USB_PRODUCT_FTDI_PCDJ_DAC2 },
{ USB_VENDOR_FTDI, USB_PRODUCT_FTDI_PYRAMID },
{ USB_VENDOR_FTDI, USB_PRODUCT_FTDI_SEMC_DSS20 },
@@ -427,6 +428,12 @@ uftdi_match(struct device *parent, void *match, void *aux)
usbd_set_config_index(uaa->device, USB_UNCONFIG_INDEX, 1);
}
+ /* JTAG on USB interface 0 */
+ if (uaa->vendor == USB_VENDOR_FTDI &&
+ uaa->product == USB_PRODUCT_FTDI_OPENRD &&
+ uaa->ifaceno == 0)
+ return (UMATCH_NONE);
+
if (nifaces <= 1)
return (UMATCH_VENDOR_PRODUCT);