Subject: kern/33154: umidi quirks for Roland UM-3EX
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: DHOYASHIKI Shinichi <clare@znet.or.jp>
List: netbsd-bugs
Date: 03/26/2006 15:50:00
>Number: 33154
>Category: kern
>Synopsis: umidi quirks for Roland UM-3EX
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: kern-bug-people
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Sun Mar 26 15:50:00 +0000 2006
>Originator: DHOYASHIKI Shinichi
>Release: NetBSD 3.99.15
>Organization:
at home
>Environment:
System: NetBSD minako.csel.org 3.99.15
NetBSD 3.99.15 (MINAKO6) #3: Wed Mar 8 01:53:13 JST 2006
clare@minako.csel.org:/src/sys/arch/i386/compile/MINAKO6 i386
Architecture: i386
Machine: i386
>Description:
Missing device ID's and umidi quirks entries.
>How-To-Repeat:
>Fix:
Following patches add support for Roland UM-3EX USB MIDI
interface module.
Index: usbdevs
===================================================================
RCS file: /deck/cvsroot/netbsd/src/sys/dev/usb/usbdevs,v
retrieving revision 1.422
diff -u -t -r1.422 usbdevs
--- usbdevs 6 Feb 2006 17:33:26 -0000 1.422
+++ usbdevs 7 Mar 2006 16:48:21 -0000
@@ -1623,6 +1623,8 @@
product ROLAND FANTOMX 0x006d Fantom-X MIDI Synth.
product ROLAND UA101 0x007d EDIROL UA-101
product ROLAND UA101F 0x008d EDIROL UA-101 USB1
+product ROLAND UA1EX 0x0096 EDIROL UA-1EX
+product ROLAND UM3 0x009A EDIROL UM-3
/* Rockfire products */
product ROCKFIRE GAMEPAD 0x2033 gamepad 203USB
Index: umidi_quirks.c
===================================================================
RCS file: /deck/cvsroot/netbsd/src/sys/dev/usb/umidi_quirks.c,v
retrieving revision 1.9
diff -u -t -r1.9 umidi_quirks.c
--- umidi_quirks.c 11 Dec 2005 12:24:01 -0000 1.9
+++ umidi_quirks.c 7 Mar 2006 16:48:58 -0000
@@ -436,6 +436,21 @@
};
/*
+ * ROLAND UM-3EX
+ */
+UMQ_FIXED_EP_DEF(ROLAND, ROLAND_UM3, 0, 1, 1) = {
+ /* out */
+ { 0, 3 },
+ /* in */
+ { 1, 3 }
+};
+
+UMQ_DEF(ROLAND, ROLAND_UM3, 0) = {
+ UMQ_FIXED_EP_REG(ROLAND, ROLAND_UM3, 0),
+ UMQ_TERMINATOR
+};
+
+/*
* quirk list
*/
struct umidi_quirk umidi_quirklist[] = {
@@ -463,6 +478,7 @@
UMQ_REG(ROLAND, ROLAND_UA101F, 2),
UMQ_REG(ROLAND, ROLAND_FANTOMX, 0),
UMQ_REG(ROLAND, ROLAND_PCR, 0),
+ UMQ_REG(ROLAND, ROLAND_UM3, 0),
UMQ_TERMINATOR
};
===================================================================
An example of dmesg output as follows:
umidi1 at uhub4 port 4 configuration 1 interface 0
umidi1: EDIROL UM-3, rev 1.10/1.00, addr 6
umidi1: (Fixed Endpoint)
umidi1: out=3, in=3
midi2 at umidi1: USB MIDI I/F
midi3 at umidi1: USB MIDI I/F
midi4 at umidi1: USB MIDI I/F