Android系统级深入开发
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.4.2 MSM内核源代码

MSM为Qualcomm(高通)公司的应用处理器,为Android使用的包括MSM7k和QSD8k这两个系列。Android的代码库中包含了MSM内核的公开源代码。

在Android开源工程的网站上,使用git工具得到msm内核的方式如下所示:

    $ git clone git://android.git.kernel.org/kernel/msm.git

代码下载完成后,使用通用的git命令查看branch的方式如下所示:

    $ git branch -r
      origin/android-msm-2.6.25
      origin/android-msm-2.6.27
      origin/android-msm-2.6.29
      origin/android-msm-2.6.29-donut
      origin/android-msm-2.6.29-nexusone
      origin/android-msm-2.6.32

选择msm通用的2.6.29版本,并且进行编译的方式如下所示:

    $ git checkout -b android-msm-2.6.29 origin/android-msm-2.6.29
    $ make ARCH=arm msm_defconfig .config
    $ make ARCH=arm CROSS_COMPILE={path}/arm-none-linux-gnueabi-

选择Nexus One中使用的MSM内核版本,并且进行编译的方式如下所示:

    $ git checkout -b android-msm-2.6.29-nexusone origin/android-msm-2.6.29-nexusone
    $ make ARCH=arm mahimahi_defconfig .config
    $ make ARCH=arm CROSS_COMPILE={path}/arm-none-linux-gnueabi-

提示:mahimahi是MSM处理器一个板级平台的名称,Nexus One手机中的MSM内核和MSM以前的内核使用了不同的config文件。