Date: Sun, 8 May 2005 13:17:24 -0400 From: David Andersen <dga+@cs.cmu.edu> To: freebsd-usb@freebsd.org Subject: Better way for EVDO PC5220 wireless modem? Message-ID: <8135ada3a231cf3a2ba2d2458050334e@cs.cmu.edu>
next in thread | raw e-mail | index | archive | help
I'm not in the slightest familiar with USB or the USB driver code, so I'm convinced there's a better way to do this. :-) A clue would be appreciated. I'm trying to get my AirPrime PC5220 CDMA wireless modem (verizon EVDO/1xRTT) to work under FreeBSD. The device presents itself as two USB serial devices, but doesn't seem to mention this via its interfaces. To work around its lack of cooperation, I stripped some of the PL-specific functions from the uplcom driver (e.g., reset() and the rtscts set function), and added the airprime to the products[] list in uplcom.c. But this seems like a rather ugly way to do it - does anyone more familiar with the framework have a suggestion for the "right" way to do it? The card isn't very complex - the first serial port is the data port: May 8 07:01:02 deep kernel: ucom0: AirPrime, Incorporated AirPrime CDMA Wireless PC Card, rev 1.10/0.01, addr 2 May 8 07:01:02 deep kernel: uplcom attach: sc = 0xc23b6400 May 8 07:01:02 deep kernel: uplcom_attach: chiptype 2303 May 8 07:01:02 deep kernel: ucom0: Found 2 interfaces May 8 07:01:02 deep kernel: ucom0: uplcom_reset: STALLED May 8 07:01:02 deep kernel: uplcom: in = 0x82, out = 0x5, intr = 0x81 May 8 07:01:02 deep kernel: ucom_attach: tty_attach tp = 0xc2180c00 May 8 07:01:02 deep kernel: ucom_attach: make_dev: ucom0 May 8 07:01:02 deep kernel: ucom0: at uhub3 port 1 (addr 2) disconnected May 8 07:01:02 deep kernel: uplcom_detach: sc = 0xc23b6400 May 8 07:01:02 deep kernel: ucom_detach: sc = 0xc23b6400, tp = 0xc2180c00 (so I also ripped out the "select second port" code from uplcom). Which basically makes me think that I've turned the uplcom driver into just a shim that forces the ucom driver to believe that the 5220 is, in fact, a serial device. So is there a "right" way to actually accomplish that? (As it is, it works; I've got PPP running over it, though I haven't tested the megabit data rates since Verizon hasn't upgraded to EVDO in Pittsburgh yet). Removing the card results in a kernel panic with or without my hacked up driver, so there's some work left to do. -Dave
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8135ada3a231cf3a2ba2d2458050334e>