]> oss.titaniummirror.com Git - oss-web.git/blobdiff - in/cp210x.md
Add read only root page
[oss-web.git] / in / cp210x.md
index e3ac95830d0a1535471a567d1b33ef95372eca91..78034c6c3b3b2dda4cd24e84a0487b9271fdadbf 100644 (file)
@@ -1,32 +1,48 @@
 title: CP210X
 linktitle: cp210x
-parent: TOP
+parent: Home
 ctime: 2009-12-10
 
-Repositories: [cp210x](http://repo/gitweb/?p=cp210x.git;a=summary), [[aptrepo]].
+Repositories: [cp210x](/gitweb/?p=cp210x.git;a=summary), [[aptrepo]].
 
 # A USB to UART chip
 
 [Silicon Labs](http://www.silabs.com) sells a single-chip USB to UART bridge,
-the [cp210x](http://www.silabs.com/products/interface/usbtouart/Pages/default.aspx).
-For windows platforms, Silicon Labs offers manufacturing support, in the form
-of a DLL and a small utility, to set the various USB descriptor fields, port
-configurations, etc.  They also offer a DLL and example programs showing how
-to manipulate the GPIO pins available on the cp2103 part.
+the
+[cp210x](http://www.silabs.com/products/interface/usbtouart/Pages/default.aspx).
+For windows platforms, Silicon Labs offers manufacturing support for setting the
+various USB descriptor fields, port configurations, etc.  They also offer a DLL
+and example programs showing how to manipulate the GPIO pins available on the
+cp2103 part.
 
-With approval from Silicon Labs, TMI has modified their reference Linux driver
-to support all of the features their Windows DLLs and utilities provide.  This
-is accomplished via extended ioctl() calls from the kernel cp210x driver, and
-various utilities and sample code.  This code is really invaluable for those
-working on hardware device designs using the cp2103.  The code is released
-under the GPLv2.
+With support from Silicon Labs, TMI has modified their GPLv2 licensed reference
+Linux driver to support all of the features their Windows DLLs and utilities
+provide.  This is accomplished via extended `ioctl()` calls from the kernel
+cp210x driver, and various utilities and sample code.  This code is invaluable
+for those working on hardware designs using the cp2103.  For example, TMI
+enhancements to tos-bsl in [[tinyos]] allow programming of an MSP430 based
+target using a USB/serial connection, by leveraging two of the four additional
+GPIO pins present on the cp2103.
 
-TMI sent the modified code back to Silicon Labs, who supposedly had someone
-in-house (or contracted) who regularly works with the maintainer of the cp210x
-(formerly cp2101) driver in the mainline Linux kernel.  That was over a year
-ago, and the code hasn't shown up.  We will be working with the maintainer
-directly to get this code available.  In the mean time, it is available
-[as source](http://repo/gitweb/?p=cp210x.git;a=summary) and from our
-[[aptrepo]].  The `cp210x-module-dkms` package in the APT repository has been
-tested on Ubuntu Hardy and Karmic systems with both 32 and 64 bit x86
-(Intel/AMD) processors.
+TMI completed these driver changes were originally completed in late 2007, but
+have been periodically updated since then to track changes to the linux kernel
+source.  Silicon Labs was to push these changes through to the mainline kernel,
+did not do so.  In mid 2010, TMI had discussions with the
+linux-usb developers, and a decent number of changes need to be made before they
+will include our modifications upstream.  Specifically, they want to see all
+ioctl calls replaced with another mechanism.  Perhaps we can allocate some time to
+work on these issues in the future.  Meanwhile, TMI will continue to maintain
+its branch of the cp210x driver.
+
+The `cp210x-module-dkms` package in the TMI APT
+repository has been tested on (X)Ubuntu 8.04 LTS (Hardy Heron), 9.10 (Karmic
+Koala), 10.04 LTS (Lucid Lynx), 10.10 (Maverick Meerkat), 11.04 (Natty Narwhal),
+and 12.04 (Precise Pangolin).  Because the driver uses the dkms facility, the
+driver should build for both 32 and 64 bit systems.  Some testing has happened
+using older versions of 64-bit (X)Ubuntu, but TMI developers predominantly use
+32-bit Xubuntu 12.04 at the moment (2012-07-09).
+
+Note: Silicon Labs has introduced new USB/Serial chips, like the cp2104.  The
+latest merge of the mainline cp210x driver, as present when used on 12.04
+systems, may be compatible with these newer parts.  TMI has not tested for this
+compatibility.