This attaches OpenRD's "SYSTEM" console to uftdi. Some special casing is needed to not attach to the JTAG interface as well. I know it's a bit ugly, but I couldn't come up with something cleaner; suggestions?
obligatory dmesg snippet: uftdi0 at uhub2 port 2 configuration 1 interface 1 "FTDI OpenRD JTAGKey FT2232D B" rev 2.00/5.00 addr 2 ucom0 at uftdi0 portno 2 Index: dev/usb/uftdi.c =================================================================== RCS file: /home/tobiasu/obsd/cvs/src/sys/dev/usb/uftdi.c,v retrieving revision 1.54 diff -u -p -r1.54 uftdi.c --- dev/usb/uftdi.c 13 Oct 2009 19:33:17 -0000 1.54 +++ dev/usb/uftdi.c 13 Dec 2009 14:22:51 -0000 @@ -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 }, @@ -426,6 +427,12 @@ uftdi_match(struct device *parent, void return (UMATCH_NONE); 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); Index: dev/usb/usbdevs =================================================================== RCS file: /home/tobiasu/obsd/cvs/src/sys/dev/usb/usbdevs,v retrieving revision 1.462 diff -u -p -r1.462 usbdevs --- dev/usb/usbdevs 8 Dec 2009 07:25:50 -0000 1.462 +++ dev/usb/usbdevs 12 Dec 2009 14:24:03 -0000 @@ -1414,6 +1414,7 @@ product FTDI FT232_6 0x6009 Serial product FTDI SERIAL_2232C 0x6010 2232C Serial product FTDI PS2KBDMS 0x8371 PS/2 Keyboard/Mouse product FTDI SERIAL_8U100AX 0x8372 Serial +product FTDI OPENRD 0x9e90 OpenRD JTAGKey product FTDI LOCOBUFFER 0xc7d0 RR-CirKits LocoBuffer product FTDI DMX4ALL 0xc850 DMX4ALL DMX interface product FTDI ASK_RDR4X7_1 0xc990 ASK RDR 4X7