NetBSD Problem Report #45908

From tih@hamartun.priv.no  Wed Feb  1 13:59:29 2012
Return-Path: <tih@hamartun.priv.no>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	by www.NetBSD.org (Postfix) with ESMTP id BF5D163D5E6
	for <gnats-bugs@gnats.NetBSD.org>; Wed,  1 Feb 2012 13:59:28 +0000 (UTC)
Message-Id: <20120201135924.8F0FA1C932@athene.hamartun.priv.no>
Date: Wed,  1 Feb 2012 14:59:24 +0100 (CET)
From: tih@hamartun.priv.no
Reply-To: tih@hamartun.priv.no
To: gnats-bugs@gnats.NetBSD.org
Subject: Roland UM-ONE and Telldus Tellstick USB devices not recognized
X-Send-Pr-Version: 3.95

>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:          closed
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Wed Feb 01 14:00:00 +0000 2012
>Closed-Date:    Sat Feb 11 05:32:39 +0000 2012
>Last-Modified:  Sat Feb 11 05:32:39 +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:/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

>Release-Note:

>Audit-Trail:
From: Iain Hibbert <plunky@rya-online.net>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: PR/45908: Roland UM-ONE and Telldus Tellstick USB devices not
 recognized
Date: Mon, 6 Feb 2012 12:28:12 +0000 (GMT)

 A bit of googling suggests that Telldus and Metageek both are using a VID
 which is used by several companies and they are not the same company
 (perhaps they are renting a product ID, to avoid USB association fees?)

 The correct thing to do would be to rename 0x1781 to list the real vendor
 and put the company (MetaGeek, Telldus, etc) into the product name, but I
 can't determine who that is. I suggest "Misc Vendors" for the vendor name
 here, as below

 iain

 Index: usbdevs
 ===================================================================
 RCS file: /cvsroot/src/sys/dev/usb/usbdevs,v
 retrieving revision 1.606
 diff -u -p -r1.606 usbdevs
 --- usbdevs	21 Jan 2012 12:50:28 -0000	1.606
 +++ usbdevs	6 Feb 2012 12:08:05 -0000
 @@ -504,7 +504,7 @@ vendor LINKSYS4		0x1737	Linksys
  vendor SENAO		0x1740	Senao
  vendor ASUSTEK2		0x1761	ASUSTeK Computer
  vendor SWEEX2		0x177f	Sweex
 -vendor METAGEEK		0x1781	MetaGeek
 +vendor MISC		0x1781	Misc Vendors
  vendor DISPLAYLINK	0x17e9	DisplayLink
  vendor E3C		0x18b4	E3C Technologies
  vendor AMIT		0x18c5	AMIT
 @@ -1858,9 +1859,6 @@ product MELCO WLIUCGN		0x015d	WLI-UC-GN
  /* Merlin products */
  product MERLIN V620             0x1110  Merlin V620

 -/* MetaGeek products */
 -product METAGEEK WISPY_24X	0x083f	Wi-Spy 2.4x
 -
  /* Metricom products */
  product METRICOM RICOCHET_GS	0x0001	Ricochet GS

 @@ -1944,6 +1942,11 @@ product MINOLTA 5400		0x400e	Dimage 5400
  product MINOLTA DIMAGEA1	0x401a	Dimage A1
  product MINOLTA XT		0x4015	Dimage Xt

 +/* Misc Vendors (sharing a Vendor ID) */
 +product MISC WISPY_24X		0x083f	MetaGeek Wi-Spy 2.4x
 +product MISC TELLSTICK		0x0c30	Telldus Tellstick
 +product MISC TELLSTICK_DUO	0x0c31	Telldus Tellstick Duo
 +
  /* Mitsumi products */
  product MITSUMI CDRRW		0x0000	CD-R/RW Drive
  product MITSUMI MOUSE		0x6407	Mouse
 @@ -2414,6 +2417,7 @@ product ROLAND UA1EX		0x0096	EDIROL UA-1
  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

From: "Iain Hibbert" <plunky@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/45908 CVS commit: src/sys/dev/usb
Date: Sat, 11 Feb 2012 05:26:31 +0000

 Module Name:	src
 Committed By:	plunky
 Date:		Sat Feb 11 05:26:31 UTC 2012

 Modified Files:
 	src/sys/dev/usb: usbdevs

 Log Message:
 the ID 0x1781 is used by more than one vendor, so change it
 from MetaGeek to "Misc Vendors"

 add Telldus Tellstick and Tellstick Duo (under Misc Vendors)
 add Roland UM-ONE MIDI interface

 from PR/45908 by Tom Ivar Helbekkmo


 To generate a diff of this commit:
 cvs rdiff -u -r1.606 -r1.607 src/sys/dev/usb/usbdevs

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Iain Hibbert" <plunky@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/45908 CVS commit: src/sys/dev/usb
Date: Sat, 11 Feb 2012 05:27:23 +0000

 Module Name:	src
 Committed By:	plunky
 Date:		Sat Feb 11 05:27:23 UTC 2012

 Modified Files:
 	src/sys/dev/usb: usb_quirks.c

 Log Message:
 USB_VENDOR_METAGEEK changed to USB_VENDOR_MISC as the Vendor-ID
 is used by more than one manufacturer

 from PR/45908 by Tom Ivar Helbekkmo


 To generate a diff of this commit:
 cvs rdiff -u -r1.73 -r1.74 src/sys/dev/usb/usb_quirks.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Iain Hibbert" <plunky@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/45908 CVS commit: src/sys/dev/usb
Date: Sat, 11 Feb 2012 05:27:55 +0000

 Module Name:	src
 Committed By:	plunky
 Date:		Sat Feb 11 05:27:55 UTC 2012

 Modified Files:
 	src/sys/dev/usb: uftdi.c

 Log Message:
 add Telldus Tellstick and Tellstick Duo

 from PR/45908 by Tom Ivar Helbekkmo


 To generate a diff of this commit:
 cvs rdiff -u -r1.50 -r1.51 src/sys/dev/usb/uftdi.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Iain Hibbert" <plunky@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/45908 CVS commit: src/sys/dev/usb
Date: Sat, 11 Feb 2012 05:28:30 +0000

 Module Name:	src
 Committed By:	plunky
 Date:		Sat Feb 11 05:28:30 UTC 2012

 Modified Files:
 	src/sys/dev/usb: umidi_quirks.c

 Log Message:
 add Roland UM-ONE (essentially, same as Roland UM-1)

 from PR/45908 by Tom Ivar Helbekkmo


 To generate a diff of this commit:
 cvs rdiff -u -r1.16 -r1.17 src/sys/dev/usb/umidi_quirks.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: plunky@NetBSD.org
State-Changed-When: Sat, 11 Feb 2012 05:32:39 +0000
State-Changed-Why:
changes committed, thanks


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.