- Android系統級深入開發
- 韓超 梁泉
- 485字
- 2018-12-29 13:39:40
6.1.2 OMAP適用于Android的Linux內核的結構
OMAP處理器的Zoom平臺Linux內核和標準的Linux內核的差別主要體現在以下幾個方面:
OMAP Zoom平臺機器的移植
OMAP Zoom平臺的驅動程序
Android中特有的驅動程序和組件
其中,OMAP Zoom機器的移植和OMAP Zoom平臺的驅動程序是硬件相關的內容,而Android中特有的驅動程序和組件是Android中特有的部分,這種內容在Android平臺的Linux內核中是基本相同的。
在Android開源工程的網站上,使用git工具得到goldfish內核的方式如下所示:
$ git clone git://android.git.kernel.org/kernel/common.git
編譯goldfish內核的過程如下所示:
$ make ARCH=arm goldfish_defconfig .config $ make ARCH=arm CROSS_COMPILE={path}/arm-none-linux-gnueabi-
使用OMAP處理器的Zoom平臺config文件的路徑為arch/arm/configs目錄中的zoom2_defconfig,這個文件關于體系結構方面的片斷如下所示:
CONFIG_ARM=y CONFIG_MMU=y # # System Type # CONFIG_ARCH_OMAP=y
OMAP Zoom的config文件后面的內容是OMAP處理器使用的特性和板級類型,主要內容如下所示:
# # TI OMAP Implementations # CONFIG_ARCH_OMAP_OTG=y CONFIG_ARCH_OMAP3=y # # OMAP Feature Selections # CONFIG_ARCH_OMAP3_GP=y # CONFIG_ARCH_OMAP3_HS is not set # CONFIG_OMAP_DEBUG_POWERDOMAIN is not set # CONFIG_OMAP_DEBUG_CLOCKDOMAIN is not set CONFIG_OMAP_SMARTREFLEX=y # CONFIG_OMAP_SMARTREFLEX_TESTING is not set CONFIG_OMAP_RESET_CLOCKS=y CONFIG_OMAP_BOOT_TAG=y CONFIG_OMAP_BOOT_REASON=y # ...... 省略中間的內容 # # OMAP Board Type # CONFIG_MACH_OMAP_ZOOM2=y CONFIG_WIFI_CONTROL_FUNC=y # ......
在以上選項中,CONFIG_ARCH_OMAP3、CONFIG_MACH_OMAP_ZOOM2等幾個選項選定了所使用機器的類型和詳細的配置內容。
由于這里使用的是OMAP3430處理器,它使用了ARVv7體系結構的Context A8的CPU核心,因此后面的CPU部分的配置如下所示:
# # Processor Type # CONFIG_CPU_32=y CONFIG_CPU_32v6K=y CONFIG_CPU_V7=y CONFIG_CPU_32v7=y CONFIG_CPU_ABRT_EV7=y CONFIG_CPU_PABRT_IFAR=y CONFIG_CPU_CACHE_V7=y CONFIG_CPU_CACHE_VIPT=y CONFIG_CPU_COPY_V6=y CONFIG_CPU_TLB_V7=y CONFIG_CPU_HAS_ASID=y CONFIG_CPU_CP15=y CONFIG_CPU_CP15_MMU=y
由于ARVv7中的A系列是當前ARM功能最強的體系結構,因此在這里打開了ARM CPU所有的特性。
推薦閱讀
- Learning Cython Programming
- AngularJS Testing Cookbook
- Django開發從入門到實踐
- 你必須知道的204個Visual C++開發問題
- Easy Web Development with WaveMaker
- HDInsight Essentials(Second Edition)
- Scala程序員面試算法寶典
- BeagleBone Black Cookbook
- Unity 2017 Mobile Game Development
- 大話Java:程序設計從入門到精通
- Android技術內幕(系統卷)
- Python Linux系統管理與自動化運維
- Beginning C# 7 Hands-On:The Core Language
- 可視化H5頁面設計與制作:Mugeda標準教程
- C#程序開發教程