Subject: kern/27197: Add support for Pharos/Microsoft GPS
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <paul@Plectere.com>
List: netbsd-bugs
Date: 10/08/2004 15:48:12
>Number: 27197
>Category: kern
>Synopsis: the Pharos/Microsoft GPS changes the "standard" devID number.
>Confidential: no
>Severity: non-critical
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Sat Oct 09 19:05:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator: Paul Shupak
>Release: NetBSD 2.99.9
>Organization:
>Environment:
System: NetBSD cobalt 2.99.9 NetBSD 2.99.9 (COBALT-$Revision: 1.4 $) #727: Thu Oct 7 17:37:08 PDT 2004 paul@svcs:/sys/arch/i386/compile/COBALT i386
Architecture: i386
Machine: i386
>Description:
The Pharos GPS units use the Prolific 2303x USB-Serial bridge chip.
The Microsoft version (comes with Streets & Trips 2005) changes the device
identifier to 0xaaa0 (AFAIK, bought directly, the Pharos uses the typical
identifier of 0x2303 - an already covered base). At $100 street price, $129
retail list price and $60 employee discount price (No, I'm not a MS employee),
it is the cheapest available 12-channel GPS that speaks NEMA out of the box
(It actually defaults to 1 sec. reporting enabled) and (of course) JUST
WORKS with "ntpd".
Only problem - Not supported yet (well, and what to do with the MS
software).
NOTE: There are reports that some units of at least one flavor of
the MS USB IntelliMouse uses the same chip and ID (from a Pharos FAQ at
their site), but that only invalidates the comments, the IntelliMouse
should work also.
>How-To-Repeat:
Plug in a Pharos GPS from Streets and Trips 2005. Look at the
kernel attach ugenX while reporting a Prolific serial device.
>Fix:
The following patches to src/sys/dev/usb/usbdevs and to
src/sys/dev/usb/uplcom.c add support (and of course, you'll need
to change your ntp.conf or whatever the intended application(s)'s
files are).
Index: usbdevs
===================================================================
RCS file: /cvsroot/src/sys/dev/usb/usbdevs,v
retrieving revision 1.378
diff -c -r1.378 usbdevs
*** usbdevs 7 Jul 2004 21:54:21 -0000 1.378
--- usbdevs 8 Oct 2004 22:27:16 -0000
***************
*** 1361,1366 ****
--- 1361,1367 ----
product PROLIFIC PL2303 0x2303 PL2303 Serial adapter (ATEN/IOGEAR UC232A)
product PROLIFIC PL2305 0x2305 Parallel printer adapter
product PROLIFIC ATAPI4 0x2307 ATAPI-4 Bridge Controller
+ product PROLIFIC PL2303X 0xaaa0 PL2303 Serial adapter (Pharos GPS - Microsoft Version)
/* Putercom products */
product PUTERCOM UPA100 0x047e USB-1284 BRIDGE
Index: uplcom.c
===================================================================
RCS file: /cvsroot/src/sys/dev/usb/uplcom.c,v
retrieving revision 1.39
diff -c -r1.39 uplcom.c
*** uplcom.c 13 Sep 2004 12:55:49 -0000 1.39
--- uplcom.c 8 Oct 2004 22:27:17 -0000
***************
*** 183,188 ****
--- 183,190 ----
{ USB_VENDOR_HAL, USB_PRODUCT_HAL_IMR001 },
/* Sitecom USB to serial cable */
{ USB_VENDOR_SITECOM, USB_PRODUCT_SITECOM_SERIAL },
+ /* Pharos USB GPS - Microsoft version */
+ { USB_VENDOR_PROLIFIC, USB_PRODUCT_PROLIFIC_PL2303X },
};
#define uplcom_lookup(v, p) usb_lookup(uplcom_devs, v, p)
>Release-Note:
>Audit-Trail:
>Unformatted: