repo下载TI ICS4.0.3源码,小总结

这应该是第4次使用repo下载适合TI的DM3730 EVM板的android源码了,今天就仔细的来说一说.前几次下载的都是android2.3(Gingerbread),这次下载的android4.0.3(ICS),话说这ICS也出来才不久,发现TI对他的支持也没有Gingerbread2.3全面,对应的UG和DG和之前的2.3都差不多,我猜原因应该是他对底层的修改不大,最多是把文件系统给替换了一下,所以熟悉2.3的去搞4.0.3也是很方便的。

提供两个网址 UG:http://processors.wiki.ti.com/index.php/TI-Android-ICS-4.0.3-DevKit-3.0.0_UserGuide

DG:http://processors.wiki.ti.com/index.php/TI-Android-ICS-4.0.3-DevKit-3.0.0_DevelopersGuide

这次下载4.0.3的源码,苦于TI的官网下载太坑人,下载他的ICS_devkit到99.9%就停止了(4个多G下载了3次)。所以只好使用repo(管理android源码仓库的脚本)来完成下载。这个下载是蛮痛苦的4个多G的.git,下载一个晚上是必须的。好了说说这次我的下载步骤吧:

吸取前期的教训,使用脚本load_Android.sh:

#!/bin/sh
echo "download Android4.0.3"
./.repo/repo/repo sync
while [ $? -ne 0 ]
    do
        ./.repo/repo/repo sync
        done
echo "load finish"

来完成,这个脚本第一次使用,分析了一下,第一句命令在shell下面执行完成,会返回一个EXIT_STATE,一般执行正常结束为0,否则非0。这个数值就存在于$?。

下载使用的mainfest与android相关如下:

default.xml                     rowboat-gingerbread-ti81xx-mc-dsp-snapshot-GMT20110926200120.xml  TI-Android-FroYo-DSP-DevKit-V2.2.0.0.xml
rowboat-donut-dsp.xml           rowboat-gingerbread-ti81xx-mc-dsp.xml                             TI-Android-GingerBread-2.3.4-DevKit-2.1.1.xml
rowboat-donut.xml               rowboat-gingerbread-ti81xx.xml                                    TI-Android-GingerBread-2.3.4-DevKit-2.1.xml
rowboat-eclair-dsp.xml          rowboat-gingerbread.xml                                           TI-Android-GingerBread-2.3.4-DevKit-Flashboard.xml
rowboat-eclair.xml              rowboat-ics-am335x.xml                                            TI-Android-GingerBread-2.3-DevKit-1.0.xml
rowboat-froyo-am1808.xml        rowboat-ics-ti81xx.xml                                            TI-Android-GingerBread-2.3-DevKit-2.0.xml
rowboat-froyo-am389x.xml        rowboat-ics.xml                                                   TI-Android-GingerBread-DSP-2.3-DevKit-1.0.xml
rowboat-froyo-dsp.xml           TI-Android-Eclair-DevKit-V1.xml                                   TI-Android-ICS-4.0.3-DevKit-3.0.0.xml
rowboat-froyo.xml               TI-Android-EVMKit-V2.2.0.0.xml                                    TI-Android-ICS-4.0.3-DevKit-3.0.1.xml
rowboat-gingerbread-am335x.xml  TI-Android-FroYo-DevKit-V2.1.0.0.xml                              TI-Android-ICS-4.0.3-DevKit-EVM-SK-3.0.1.xml
rowboat-gingerbread-am45x.xml   TI-Android-FroYo-DevKit-V2.2.0.0.xml
rowboat-gingerbread-dsp.xml     TI-Android-FroYo-DevKit-V2.xml


基本上涉及TI的开发板的android源码xml都在上面了,主要是rowboat和Ti。rowboat做为Geogle的一个porject专门为Ti的Davinci处理器服务和支持。TI_devkit开发团队基本是TI原先在开发omap那帮人。

前期使用过GingerBread Devkit(包括支持dsp(CE)和非dsp(DSPBridge),也使用过rowboat。这次选择了  TI-Android-ICS-4.0.3-DevKit-3.0.1.xml,但是下载完同步后没有x-loader,也不能按张DG编译文件系统等,初步怀疑这个xml有缺陷。

后来直接删除了同步出来的文件,重新init -u git://gitorious.org/rowboat/manifest.git -m xml(选择了  TI-Android-ICS-4.0.3-DevKit-3.0.0.xml)发现后来正常了

这也总结出,不需要重新再次去下载.git(最浪费时间),换个xml就可以完成升级之类的。或者版本的替换,因为如果缺失,repo sync会完成缺损部分的下载,或者添加等等。

一句话,如果源码下载有误,不许全部删除project.git,换个路径的xml试试。这样可以节省很多时间。至于选哪个看开发的需要。话说网上很多下载都是和TI平台无关的android源码。

最后感谢TI E2E™ Community上Vishveshwar Bhat的帮助,嘿嘿,ICS我来了。


TI官方给出的.3.0.1为何没有x-loader

TI-Android-ICS-4.0.3-DevKit-3.0.1.xml manifest is for AM335x devices only. There is no separate x-loader sources as its it part of the u-boot sources itself.

意思应该就是这套源码只支持AM335X,没有单独的x-loader。它已经是uboot源码的一部分了。

对上述解释(http://processors.wiki.ti.com/index.php/TI-Android-ICS-4.0.3-DevKit-3.0.1_ReleaseNotes),此处有解答,AM335x的uboot里面包含了类似x-loader的SPL,并且是和uboot打包在一起的,最终还是会编译成为MLO镜像的。只是的确没有单独分离成为x-loader

你可能感兴趣的:(android,xml,shell,脚本,download)