当前位置:首页 >> 信息与通信 >>

展讯6820


M ocorDroid 杂项客户化配置

MocorDroid 杂项客户化配置

Version: 1.0.0 DocCode:SW-MOCORSMART-UG-2011-0007 Date: 2012-01-18

www.spread trum.com

M ocorDroid 杂项客户化配置

Revision History
Version 0.0.1 Date 2012-2-17 Owner Mingmin Ling Description Draft version

-i-

Contents
Chapter 1 介绍 .............................................................................................................................5 1.1 简介...................................................................................................................................5 1.2 相关文档............................................................................................................................5 Chapter 2 杂项配置概要 ...............................................................................................................6 2.1 文件路径............................................................................................................................6 2.2 文件列表............................................................................................................................6 Chapter 3 配置 build.sh ...............................................................................................................8 3.1 文件描述............................................................................................................................8 3.2 用户指南............................................................................................................................8 3.2.1 定义 ANDROID_3RDPART Y_KERNEL_CONFIG .......................................................8 3.2.2 定义 PRODUCT_COPY_FILES ..................................................................................8 Chapter 4 配置 BoardConfig.mk ..................................................................................................9 4.1 文件描述............................................................................................................................9 4.2 用户指南............................................................................................................................9 Chapter 5 配置 AndroidBoard.mk.............................................................................................. 11 5.1 文件描述.......................................................................................................................... 11 5.2 用户指南.......................................................................................................................... 11 5.2.1 编译 kl 文件 ........................................................................................................... 11 5.2.2 编译 kcm 文件........................................................................................................ 11 5.2.3 编译 rc 文件 ........................................................................................................... 12 5.2.4 编译 vold.fstab......................................................................................................... 12 5.2.5 编译 rc.local ............................................................................................................ 13 5.2.6 编译 audio_para ....................................................................................................... 13 Chapter 6 配置 sprd_apps.mk .................................................................................................... 14 6.1 文件描述.......................................................................................................................... 14 6.2 用户指南.......................................................................................................................... 14
-ii-

Chapter 7 配置 apns-conf.xml .................................................................................................... 15 7.1 文件描述.......................................................................................................................... 15 7.2 用户指南.......................................................................................................................... 15 Chapter 8 配置 init.sp6820a.rc ................................................................................................... 16 8.1 文件描述.......................................................................................................................... 16 8.2 用户指南.......................................................................................................................... 16 8.2.1 设定 log level .......................................................................................................... 16 8.2.2 设置工程模式的按键................................................................................................ 16 Chapter 9 配置 rc.loacal............................................................................................................. 17 9.1 文件描述.......................................................................................................................... 17 9.2 用户指南.......................................................................................................................... 17 Chapter 10 配置 sprd-keypad.kl................................................................................................. 18 10.1 文件描述 ........................................................................................................................ 18 10.2 用户指南 ........................................................................................................................ 18 Chapter 11 配置 system.prop...................................................................................................... 19 11.1 文件描述 ........................................................................................................................ 19 11.2 用户指南 ........................................................................................................................ 19 Chapter 12 配置 vold.fstab......................................................................................................... 20 12.1 文件描述 ........................................................................................................................ 20 12.2 用户指南 ........................................................................................................................ 20

-iii-

M ocorDroid 杂项客户化配置

Chapter 1 介绍
1.1 简介
本文档介绍展讯 Android 平台客户配置杂项文件部分。这些文件在编译和执行阶段起到重要的 作用。它们被统一放置在杂项配置文件夹下。目地是使得对项目的配置更容易

1.2 相关文档

5

M ocorDroid 杂项客户化配置

Chapter 2 杂项配置概要
2.1 文件路径
杂项配置文件位于 AndroidTop\customize\custom_cfg\${project_name}\res

2.2 文件列表
杂项配置文件包括三类 1 展讯定义的编译文件

文件名 build.sh

描述 展讯定义的工程编译配置文件,是一个可执行的 shell 脚本

2 Android 编译所依赖的产品配置文件,一般会被 patch 到 Android 的 V endor 文件夹. 文件名 AndroidBoard.mk BoardConfig.mk sprd_apps.mk 描述 定义预编译模块,包括 kl,kcm,rc 等文件 Android 产品编译的入口,定义大量编译宏 被猪编译文件包含,用于添加自定义 apk

3 Function related files which will be patch to Android directories and add to system.img 文件名 hw_params\audio_para apns-conf.xml 描述 二进制文件,用于保存音频参数 无线接入点配置文件

6

Chapter 2

杂项配置概要

init.sp6820a.rc init.sp6820a.3rdparty.rc rc.loacal sprd-keypad.kl sprd-keypad.kcm system.prop vold.fstab

Android 启动脚本,由 Android 的 init 进程解析执行 被 init.sp6820a.rc 包含 Linux 启动脚本的一种 Android key layout 文件,用于解析键盘键值 Android key char manager 文件,用于缺省键盘 Android 系统文件,用于定义 Android 系统属性 Android 系统文件,用于热插拔的存储设备中的文件系 统挂载

7

M ocorDroid 杂项客户化配置

Chapter 3 配置 build.sh
3.1 文件描述
Build.sh 是一个可执行的 shell 脚本,定义了一些编译过程中需要的全局变量,并且完成 patch 其他 杂项文件到指定的 Android 目录

3.2 用户指南
3.2.1 定义 ANDROID_3RDPARTY_KERNEL_CONFIG
Build.sh 定义了全局变量 ANDROID_3RDPART Y_KERNEL_CONFIG.。这个变量指定了编译 Linux 内核所使用的配置 例如, 在 sp6820a 项目的 bulid.sh 中,有如下定义: export ANDROID_3RDPARTY_KERNEL_CONFIG=sc8810-sp6820a-trusted-abs-android_defconfig sc8810-sp6820a-trusted-abs-android_defconfig 位于内核的 arch\arm\configs 目录下

3.2.2 定义 PRODUCT_COPY_FILES
Build.sh 会拷贝其他杂项文件到 Android 目录下,主要是 vendor 目录。这些需要被拷贝的文件需要 添加到数组 PRODUCT_COPY_FILES.中

8

M ocorDroid 杂项客户化配置

Chapter 4 配置 BoardConfig.mk
4.1 文件描述
Boardconfig.mk 是产品的编译入口。在这个文件中定义的宏会对所有的 Android.mk 文件与 c/c++文 件生效

4.2 用户指南
Boardconfig.mk 主要用于添加宏定义. 在范例中,有如下定义: TARGET_BOARD_PLATFORM := sprdbp TARGET_BOARD_CHIP := sc8810 TARGET_BOOTLOADER_BOARD_NAME := sp6820a TARGET_GPU_VARIANT := mali TARGET_ARCH_VARIANT := armv7-a-neon TARGET_NO_BOOTLOADER := true TARGET_NO_KERNEL := false TARGET_CPU_ABI := armeabi-v7a TARGET_CPU_ABI2 := armeabi TARGET_PROVIDES_INIT_RC := false HAVE_HTC_AUDIO_DRIVER := true USE_CAMERA_ST UB :=false BOARD_USES_GENERIC_AUDIO := false BOARD_USES_ALSA_AUDIO := true BUILD_WITH_ALSA_UTILS := true BOARD_HAVE_BLUETOOTH := true BOARD_USE_VET H := true BOARD_USE_TD := false

9

M ocorDroid 杂项客户化配置

BOARD_USE_GSM := true BUILD_SPRD_MT V := true BUILD_SPRD_OMX := false BUILD_SPRD_RIL := false BUILD_SPRD_HW := true BUILD_SPRD_STAGEFRIGHT := false TARGET_RECOVERY_UI_LIB := librecovery_ui_sprd HAVE_RADIO_IMG := false BUILD_SPRD_ENG := false USE_MEMSIC_DAEMON := false USE_DEFAULT_FM := true

“:=”的左右两侧分别是宏名称和宏值 所有 Android.mk 和 c/c++ 文件会包含这些宏

10

M ocorDroid 杂项客户化配置

Chapter 5 配置 AndroidBoard.mk
5.1 文件描述
AndroidBoard.mk 是重要的编译文件,指定了预编译模块。包括 kl,kcm,rc 等,是许多 Android 系 统配置文件参与编译的制定者

5.2 用户指南
5.2.1 编译 kl 文件
以下语句将 kl 文件定义为预编译模块加入系统编译

file := $(TARGET_OUT_KEYLAYOUT)/sprd-keypad.kl ALL_PREBUILT += $(file) $(file) : $(LOCAL_PA H)/sprd-keypad.kl | $(ACP) T $(transform-prebuilt-to-target)

注意 kl 的文件名是与内核中键盘 input 设备名对应的

5.2.2

编译 kcm 文件

以下语句将 kcm 文件定义为预编译模块加入系统编译

include $(CLEAR_VARS) LOCAL_SRC_FILES := sprd-keypad.kcm include $(BUILD_KEY_CHAR_MAP)

注意 kcm 的文件名是与内核中键盘 input 设备名对应的

11

M ocorDroid 杂项客户化配置

5.2.3 编译 rc 文件
以下语句将 rc 文件定义为预编译模块加入系统编译

file := $(TARGET_ROOT_OUT)/init.sp6820a.rc ALL_PREBUILT += $(file) $(file) : $(LOCAL_PA H)/init.sp6820a.rc | $(ACP) T $(transform-prebuilt-to-target)

include $(CLEAR_VARS) LOCAL_MODULE := init.sp6820a.3rdparty.rc LOCAL_MODULE_TAGS := user LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PA := $(if $(ANDROID_3RDPARTY_PACKAGE_INSTALL), \ TH $(ANDROID_3RDPARTY_PACKAGE_INSTALL)/init, \ $(TARGET_OUT)/sps/init) LOCAL_SRC_FILES := init.sp6820a.3rdparty.rc include $(BUILD_PREBUILT)

注意 rc 的文件名是与内核中板子配置(board_cfg.c)中 machinename 对应的

5.2.4 编译 vold.fstab
以下语句将 vold.fstab 文件定义为预编译模块加入系统编译:

file := $(TARGET_OUT_ETC)/vold.fstab ALL_PREBUILT += $(file)
12

M ocorDroid 杂项客户化配置

$(file) : $(LOCAL_PA H)/vold.fstab | $(ACP) T $(transform-prebuilt-to-target)

5.2.5 编译 rc.local
以下语句将 rc.local 文件定义为预编译模块加入系统编译:

file := $(TARGET_OUT_ETC)/vold.fstab ALL_PREBUILT += $(file) $(file) : $(LOCAL_PA H)/vold.fstab | $(ACP) T $(transform-prebuilt-to-target)

5.2.6 编译 audio_para
以下语句将 audio_para 文件定义为预编译模块加入系统编译:

file := $(TARGET_OUT_ETC)/audio_para ALL_PREBUILT += $(file) $(file) :

$(ANDROID_CUSTOMIZE_BASE)/customer_cfg/$(ANDROID_3RDPART Y_IMAGE_TAG)/res/hw_pa rams/audio_para | $(ACP) $(transform-prebuilt-to-target) endif

13

M ocorDroid 杂项客户化配置

Chapter 6 配置 sprd_apps.mk
6.1 文件描述
Sprd_apps.mk 被展讯产品 common 的编译文件包含,用于添加自定义的 APK

6.2 用户指南
Sprd_apps.mk 通过定义宏 PRODUCT_PACKAGES. 并将 APK 加入该宏实现在系统中预装 APK.

例如: PRODUCT_PACKAGES := \ VideoPlayer \ SearchCallLog \ Note

14

M ocorDroid 杂项客户化配置

Chapter 7 配置 apns-conf.xml
7.1 文件描述
Apns-conf.xml 是 Android 无线网络接入配置文件

7.2 用户指南
根据运营商的需要编辑改文件

15

M ocorDroid 杂项客户化配置

Chapter 8 配置 init.sp6820a.rc
8.1 文件描述
Rc 文件是 Android 的启动脚本,由 init 进程解析,可以更改文件属性,启动后台进程,设置属性等, 在该文件中有一些展讯指定的定义

8.2 用户指南
8.2.1 设定 log level
loglevel 3 这一行设定 logcat 的等级

8.2.2 设置工程模式的按键
setprop ro.recvkeys 115,114,116,212 setprop ro.recvkey.up setprop ro.recvkey.down setprop ro.recvkey.enter setprop ro.recvkey.home setprop ro.recvkey.power 115 114 116 212 116

这些属性被用于工程模式,分别定义工程模式的上,下,确定,返回和开机键

16

M ocorDroid 杂项客户化配置

Chapter 9 配置 rc.loacal
9.1 文件描述
Rc.local 是 Linux 系统启动的脚本之一

9.2 用户指南
目前该文件包含第三方 wifi 和蓝牙需要的一些脚本执行内容

17

M ocorDroid 杂项客户化配置

Chapter 10 配置 sprd-keypad.kl
10.1 文件描述
展讯缺省键盘 Key layout 文件

10.2 用户指南
sprd-keypad.kl is 是 Android 标注全键盘配置文件 qwerty.kl 的部分拷贝。 由于展讯的键盘驱动上报键 值是按 Android 全键盘标准定义的,所以键值符合 qwerty.kl 的定义. 只有当添加全新键值的时候,需要在内核键盘驱动中定义新的上报值,并且在 kl 文件中也添加这个 新值的定义

一个键值定义的例子如下 key 116 POWER WAKE

116 是 power 键按下时驱动的上报值 POWER 是 Android 的 framework 使用的键值定义. WAKE 标 志这个键值吃睡眠唤醒

18

M ocorDroid 杂项客户化配置

Chapter 11 配置 system.prop
11.1 文件描述
System.prop 是 Android 系统文件,用于与定义系统属性

11.2 用户指南
用以下格式编写此文件 property = value 所有 Android 系统支持的系统属性或者自定义的属性都可以在这里预定义

wifi.supplicant_scan_interval = 48 这个属性是 wifi 的扫描间隔

ro.sf.lcd_density = 240 这个属性是 lcd 的显示分辨率

19

M ocorDroid 杂项客户化配置

Chapter 12 配置 vold.fstab
12.1 文件描述
V old.fstab 是 Android 的系统文件,用于热插拔存储设备的文件系统挂载

12.2 用户指南
一个文件系统挂载项举例

dev_mount sdcard /mnt/sdcard auto /devices/platform/sprd-sdhci.0/mmc_host/mmc0

这是 sd 卡文件系统的描述 dev_mount: 文件挂载的指令 sdcard: 设备名 /mnt/sdcard: 挂载文件系统的根目录. auto: 文件系统分区,auto 只有一个分区 /devices/platform/sprd-sdhci.0/mmc_host/mmc0: 对应设备驱动在 sysfs 中的目录

20


赞助商链接
相关文章:
更多相关文章: