NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/45908: Roland UM-ONE and Telldus Tellstick USB devices not recognized
>Number: 45908
>Category: kern
>Synopsis: Roland UM-ONE and Telldus Tellstick USB devices not recognized
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: kern-bug-people
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Wed Feb 01 14:00:00 +0000 2012
>Originator: Tom Ivar Helbekkmo
>Release: NetBSD 5.99.60 per 2012-01-24
>Organization:
>Environment:
System: NetBSD athene.hamartun.priv.no 5.99.60 NetBSD 5.99.60 (ATHENE) #31: Tue
Jan 31 21:40:41 CET 2012
tih%athene.hamartun.priv.no@localhost:/usr/obj/sys/arch/i386/compile.i386/ATHENE
i386
Architecture: i386
Machine: i386
>Description:
Roland's new low-cost USB MIDI interface, the UM-ONE, is not supported
by NetBSD. Since the interface, as far as the driver in NetBSD is
concerned, works just like the old UM-1, it's very simple to fix this.
The Swedish company Telldus seems to have changed their name from
Metageek, and now market a home automation product called the
Tellstick. Support for this new device, and its big brother, the
Tellstick Duo, as ucom over uftdi devices, is also simple to add.
>How-To-Repeat:
Connect a Roland UM-ONE, and observe that it is not recognized as umidi.
Connect a Tellstick, and observe that it is not recognized as uftdi/ucom.
>Fix:
Apply the following patch:
Index: sys/dev/usb/uftdi.c
===================================================================
RCS file: /cvsroot/src/sys/dev/usb/uftdi.c,v
retrieving revision 1.50
diff -u -r1.50 uftdi.c
--- sys/dev/usb/uftdi.c 23 Dec 2011 00:51:45 -0000 1.50
+++ sys/dev/usb/uftdi.c 1 Feb 2012 13:35:59 -0000
@@ -153,6 +153,8 @@
{ USB_VENDOR_SEALEVEL, USB_PRODUCT_SEALEVEL_SEAPORT4P3 },
{ USB_VENDOR_SEALEVEL, USB_PRODUCT_SEALEVEL_SEAPORT4P4 },
{ USB_VENDOR_SIIG2, USB_PRODUCT_SIIG2_US2308 },
+ { USB_VENDOR_TELLDUS, USB_PRODUCT_TELLDUS_TELLSTICK },
+ { USB_VENDOR_TELLDUS, USB_PRODUCT_TELLDUS_TELLSTICK_DUO },
};
#define uftdi_lookup(v, p) usb_lookup(uftdi_devs, v, p)
Index: sys/dev/usb/umidi_quirks.c
===================================================================
RCS file: /cvsroot/src/sys/dev/usb/umidi_quirks.c,v
retrieving revision 1.16
diff -u -r1.16 umidi_quirks.c
--- sys/dev/usb/umidi_quirks.c 8 Jul 2008 11:34:43 -0000 1.16
+++ sys/dev/usb/umidi_quirks.c 1 Feb 2012 13:35:59 -0000
@@ -515,6 +515,22 @@
};
/*
+ * ROLAND UM-ONE
+ */
+UMQ_FIXED_EP_DATA_DEF(ROLAND, ROLAND_UMONE, ANYIFACE, 1, 1) = {
+ /* out */
+ { 0, 1 },
+ /* in */
+ { 1, 1 }
+};
+UMQ_FIXED_EP_DEF(ROLAND, ROLAND_UMONE, ANYIFACE, 1, 1);
+
+UMQ_DEF(ROLAND, ROLAND_UMONE, ANYIFACE) = {
+ UMQ_FIXED_EP_REG(ROLAND, ROLAND_UMONE, ANYIFACE),
+ UMQ_TERMINATOR
+};
+
+/*
* Midiman Midisport 2x4. This has 2 physical MIDI IN jacks that are read
* on endpoint 0x81 (descriptor index 0). It has 4 physical MIDI OUT jacks
* that can be written on endpoints 2 or 4 (at descriptor index 2 or 4,
@@ -587,6 +603,7 @@
UMQ_REG(ROLAND, ROLAND_UA25, 2),
UMQ_REG(ROLAND, ROLAND_UA4FX, 2),
UMQ_REG(ROLAND, ROLAND_SONICCELL, 2),
+ UMQ_REG(ROLAND, ROLAND_UMONE, ANYIFACE),
UMQ_REG(MIDIMAN, MIDIMAN_MIDISPORT2X4, ANYIFACE),
{ .vendor = 0 },
};
Index: sys/dev/usb/usb_quirks.c
===================================================================
RCS file: /cvsroot/src/sys/dev/usb/usb_quirks.c,v
retrieving revision 1.73
diff -u -r1.73 usb_quirks.c
--- sys/dev/usb/usb_quirks.c 23 Dec 2011 00:51:48 -0000 1.73
+++ sys/dev/usb/usb_quirks.c 1 Feb 2012 13:35:59 -0000
@@ -63,7 +63,7 @@
ANY, { UQ_HID_IGNORE }},
{ USB_VENDOR_TRIPPLITE2, USB_PRODUCT_TRIPPLITE2_UPS,
ANY, { UQ_HID_IGNORE }},
- { USB_VENDOR_METAGEEK, USB_PRODUCT_METAGEEK_WISPY_24X, ANY, { UQ_HID_IGNORE
}},
+ { USB_VENDOR_TELLDUS, USB_PRODUCT_TELLDUS_WISPY_24X, ANY, { UQ_HID_IGNORE }},
{ USB_VENDOR_KYE, USB_PRODUCT_KYE_NICHE, 0x100, { UQ_NO_SET_PROTO}},
{ USB_VENDOR_INSIDEOUT, USB_PRODUCT_INSIDEOUT_EDGEPORT4,
Index: sys/dev/usb/usbdevs
===================================================================
RCS file: /cvsroot/src/sys/dev/usb/usbdevs,v
retrieving revision 1.606
diff -u -r1.606 usbdevs
--- sys/dev/usb/usbdevs 21 Jan 2012 12:50:28 -0000 1.606
+++ sys/dev/usb/usbdevs 1 Feb 2012 13:35:59 -0000
@@ -504,7 +504,7 @@
vendor SENAO 0x1740 Senao
vendor ASUSTEK2 0x1761 ASUSTeK Computer
vendor SWEEX2 0x177f Sweex
-vendor METAGEEK 0x1781 MetaGeek
+vendor TELLDUS 0x1781 Telldus
vendor DISPLAYLINK 0x17e9 DisplayLink
vendor E3C 0x18b4 E3C Technologies
vendor AMIT 0x18c5 AMIT
@@ -1858,8 +1858,10 @@
/* Merlin products */
product MERLIN V620 0x1110 Merlin V620
-/* MetaGeek products */
-product METAGEEK WISPY_24X 0x083f Wi-Spy 2.4x
+/* Telldus products */
+product TELLDUS WISPY_24X 0x083f Wi-Spy 2.4x
+product TELLDUS TELLSTICK 0x0c30 Tellstick
+product TELLDUS TELLSTICK_DUO 0x0c31 Tellstick Duo
/* Metricom products */
product METRICOM RICOCHET_GS 0x0001 Ricochet GS
@@ -2414,6 +2416,7 @@
product ROLAND UM3 0x009A EDIROL UM-3
product ROLAND UA4FX 0x00A3 EDIROL UA-4FX
product ROLAND SONICCELL 0x00C2 SonicCell
+product ROLAND UMONE 0x012a UM-ONE MIDI I/F
/* Sagem products */
product SAGEM XG760A 0x004a XG-760A
Home |
Main Index |
Thread Index |
Old Index