X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=in%2Fcp210x.md;h=78034c6c3b3b2dda4cd24e84a0487b9271fdadbf;hb=407f98e5b0626afb267f91e4f0ac02d2dcaa1b23;hp=e6b1f769289d121d46dab888ff8527fd4c86ef05;hpb=d848b801a6fa1fad501fb8b58a7ed8dd3dc5e359;p=oss-web.git diff --git a/in/cp210x.md b/in/cp210x.md index e6b1f76..78034c6 100644 --- a/in/cp210x.md +++ b/in/cp210x.md @@ -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.