usb/119002: add "ucp" driver support
Steve Franks
stevefranks at ieee.org
Tue Dec 25 16:10:06 PST 2007
The following reply was made to PR usb/119002; it has been noted by GNATS.
From: "Steve Franks" <stevefranks at ieee.org>
To: bug-followup at FreeBSD.org, stevefranks at ieee.org
Cc:
Subject: Re: usb/119002: add "ucp" driver support
Date: Tue, 25 Dec 2007 16:41:10 -0700
Sucess! I have built and proven that the ucp.ko driver works with all
my various work and hobby projects using the Silicon Laboratories
CP2101, CP2102, and CP2103 devices. There are alot of other
off-the-shelf OEM devices using this chipset, which allow for
different VID's & PID's (see the patch file) - I was obviously unable
to test them as I only have the manufacturer's reference design style
hardware, but there is no way to modify the operation of the chipset
except for the VID & PID, so I assume they will work fine if FreeBSD
recognizes the VID & PID - not a usb expert. Test was performed with
Minicom talking to /dev/cuaU0; after kldload ucp, plugging in a CP210x
yields "ucom0" in dmesg, and cuaU0 in /dev.
I think my earlier problem was due to the patch mucking the system -
if run from /usr/src/sys, it doesn't create the modules/ucp folder
like it should, don't know why. Here's what I did that worked:
1. /usr/src/sys/dev/usb# patch < ~/ucp-0.01.diff
2. /usr/src/sys/dev/usb# mkdir /usr/src/sys/modules/ucp
3. /usr/src/sys/dev/usb# mv Makefile /usr/src/sys/modules/ucp
3a. Once you have proven it works, you might want to remove the -DEBUG
line from this makefile (I did up front, never tested with debug
symbols/code on my system)
4. manually edit /usr/src/sys/dev/usb/usbdevs to fix the patch
collision and add all the new lines (specifically vendor SILABS 0x10c4
Silicon labs)
5. manually edit /usr/src/sys/modules/Makefile to add the line:
ucp \
after the line
ucom \
6. build & install kernel
Incidentally, since I cvsup'd to clean up my previous mess, I am now
on 6.3-xxx, but I don't think that was a factor in making it work.
Also, note that step 5 is not in the diff file at all for some reason,
as opposed to step 4 which simply didn't patch in automatically.
Best,
Steve
More information about the freebsd-usb
mailing list