]> oss.titaniummirror.com Git - oss-web.git/blobdiff - in/cp210x.md
Add read only root page
[oss-web.git] / in / cp210x.md
index e6b1f769289d121d46dab888ff8527fd4c86ef05..78034c6c3b3b2dda4cd24e84a0487b9271fdadbf 100644 (file)
@@ -1,30 +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 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.
+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 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
+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.  The code is released
-under the GPLv2.
+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 completed these driver changes of a year ago and has since been maintaining
-it.  Silicon Labs was to push these changes through to the mainline kernel, but
-this clearly has not happened yet.  TMI will be working directly with the kernel
-cp210x maintainer to investigate incorporating our changes.  Meanwhile, TMI
-will continue to maintain its branch of the cp210x driver.  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.