Subject: kern/30554: The ParaParaParadise USB controller needs special handling in uhid(4)
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <svs+pr@grep.ru>
List: netbsd-bugs
Date: 06/19/2005 01:50:00
>Number: 30554
>Category: kern
>Synopsis: The ParaParaParadise USB controller needs special handling in uhid(4)
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: kern-bug-people
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Sun Jun 19 01:50:00 +0000 2005
>Originator: Sergey Svishchev
>Release: 3.99.3
>Organization:
>Environment:
>Description:
The ParaParaParadise controller is a perfectly normal USB HID device with just one quirk -- it needs to be 'woken up' before it will send input reports. It was sold with Konami game for PlayStation2 and the game; there are at least two game simulators out there (pydance and stepmania) that could use this controller, too. Before now, the wake-up method was not known -- see, e.g., http://icculus.org/pyddr/manual.php#install.mat.ppp; it was really easy to discover, though ("usbhidctl -r" shows a feature report with really intriguing name of "LEDs:On-Line" :-)
>How-To-Repeat:
>Fix:
--- sys/dev/usb/uhidev.c 27 Feb 2005 00:27:51 -0000 1.24
+++ sys/dev/usb/uhidev.c 16 Jun 2005 17:45:34 -0000
@@ -211,6 +211,19 @@
USB_ATTACH_ERROR_RETURN;
}
+ if (uaa->vendor == USB_VENDOR_HOSIDEN &&
+ uaa->product == USB_PRODUCT_HOSIDEN_PPP) {
+ static uByte reportbuf[] = {1};
+ /*
+ * This device was sold by Konami with its ParaParaParadise
+ * game for PlayStation2. It needs to be "turned on"
+ * before it will send any reports.
+ */
+
+ usbd_set_report(uaa->iface, UHID_FEATURE_REPORT, 0,
+ &reportbuf, sizeof reportbuf);
+ }
+
sc->sc_repdesc = desc;
sc->sc_repdesc_size = size;
--- sys/dev/usb/usbdevs 15 Mar 2005 17:52:18 -0000 1.398
+++ sys/dev/usb/usbdevs 24 May 2005 18:43:22 -0000
@@ -147,6 +147,7 @@
vendor AIPTEK2 0x04fc AIPTEK International
vendor ACER 0x0502 Acer
vendor 3COM 0x0506 3Com
+vendor HOSIDEN 0x0507 Hosiden Corporation
vendor AZTECH 0x0509 Aztech Systems
vendor BELKIN 0x050d Belkin Components
vendor KAWATSU 0x050f Kawatsu Semiconductor
@@ -921,6 +922,9 @@
product HITACHI DZMV100A 0x0004 DVD-CAM DZ-MV100A Camcorder
product HITACHI DVDCAM_USB 0x001e DVDCAM USB HS Interface
+/* Hosiden Corporation products */
+product HOSIDEN PPP 0x0011 ParaParaParadise Controller
+
/* HP products */
product HP 895C 0x0004 DeskJet 895C
product HP 4100C 0x0101 Scanjet 4100C