HTC is distributing the Linux kernel as part of the Android operating system on its Hero mobile phone.  While the Android OS is licensed under the Apache Public License and does not have significant distribution restrictions, the Linux kernel itself is licensed under the GPL.  HTC has made modifications to the Linux kernel source code specific to its hardware, and has compiled the modifications directly into the kernel (not using loadable modules), thus requiring release of that source code.<br>

<br>There are two seperate versions of the Hero phone, with slightly different hardware for two different mobile phone radio technologies- GSM and CDMA.  The GSM Hero was the first one released, and is used in several areas around the world (not including the US).  In the USA, the Hero currently being distributed is the CDMA versions, sold by Sprint.  Due to the different radio hardware in the phones, they have different kernels.  HTC has made the GSM kernel available on its <a href="http://developer.htc.com">developer.htc.com</a> website, but for several months (since the CDMA Hero&#39;s release Oct 11th) has been unwilling to release the source code for its CDMA kernel.  I&#39;m not certain if they are intentionally withholding the information, or if they actually do not realize that it is different source code that must also be released.<br>

<br>Here is a copy of the recent detailed request I sent to HTC (support ref # 591050), I will update with the reply I receive:<br><br><br>Request for Linux source code specific to CDMA Hero per GNU Public License terms<br>

<br>Per the HTC Hero Legal Agreement, and the GNU Public License, I am requesting the complete source code that was used to build the Linux kernel on the CDMA Hero being distributed in the USA by Sprint.  This includes all the source code (.c files) plus header files (.h files) plus the scripts used to control compilation and installation of [only] the Linux kernel. These must be the files specific to the distributed kernel version, as follows:<br>

<br>Linux version 2.6.27-533ce29d (htc-kernel@and18-2) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #742 PREEMPT Fri Aug 28 21:59:31 CST 2009<br><br>I am aware of the file available at <a href="http://developer.htc.com">developer.htc.com</a> (kernel_hero_0078c992.tar.bz2, 49.6MB), that was released on 2009/10/22.  However, this source code is specific to the GSM model of the Hero, which is not sold in the USA.  The source code used to produce the US-spec CDMA Hero&#39;s kernel is different than what is contained within this file.  There are several key source code files that are missing from this archive file, including but not limited to:<br>

<br>arch/arm/mach-msm/board-heroc.c<br>arch/arm/mach-msm/board-heroc-keypad.c<br>arch/arm/mach-msm/board-heroc-panel.c<br>arch/arm/mach-msm/board-heroc-mmc.c<br>arch/arm/mach-msm/board-heroc-camsensor.c<br>arch/arm/mach-msm/board-heroc-rfkill.c<br>

<br>I would like to receive those files, plus any others that are necessary to build the kernel as distributed on the US-spec CDMA Hero. The terms of the GNU Public License mandate that anyone distributing the specific software (Linux kernel) MUST make available all files used to build that software, including any modifications that they made to that software.  HTC is required by US and International copyright law to do so.<br>

<br>Please ensure that this request is handled by someone familiar with the development of the kernel for the US-spec CDMA Hero. If this request is not met, then HTC is required by law to cease and desist distribution of said software (Linux kernel), which would require ceasing distribution of the US-spec CDMA Hero phone as currently configured.<br>

<br>Thank you sincerely for your time in handling this matter in a competent and detailed manner. I will expect to hear back promptly.<br><br><br>