立即注册
查看: 1180|回复: 0

[展讯开发资料] 展讯平台Android11.0 Device MD组态编译系统使用指南

已绑定手机
发表于 2022-1-10 14:49:33 | 显示全部楼层 |阅读模式 来自 广东省深圳市
本文档主要阐述 UNISOC Android 11.0 软件平台 device/sprd 目录下 board 及其 product 的配置。提供了操作规范和使用示例,用户可根据具体的使用场景,定制化配置。

1、简介
1.1 概述
Android 源码中,device/sprd 目录是 UNISOC 的板级开发包和产品配置信息。Android 11.0 上,为了简化用户工程的创建,采用了面向对象的思想对 device/sprd 目录下配置信息的存放方式和组合方式进行了重构,这种组合方式称之为 MD(Modularize build System)组态编译系统。
device/sprd 目录下,所有 board 的通用配置信息、product 的通用配置信息,以及 UNISOC 提供的用于板卡上的模块配置信息,都以模块化的方式存放在 mpool 目录下。用户基于 MD 组态编译系统提供的接 口,创建自己的 board 和 product。 本文档主要介绍基于 MD 组态编译系统,进行 device/sprd 目录下 board 和 product 的创建,以及用户定制化信息的添加。
说明:
● <xxx>:用于特指 xxx 类型中的某一个元素。例如,sharkl3/<board>,表示 sharkl3 目录下任意一款 board。
● board:board 级配置,描述一个物理板卡的特性、基本参数等,与硬件紧密相关的配置文件。
● product:product 级配置,描述基于一个物理板卡定义的产品的特性、功能(如换壳、换主题)等。
● module:模块级配置信息,存放于具体平台、产品有关的模块的配置信息。相当于文中的“模块”。
● feature:模块功能级的配置,存放针对模块某一项功能的配置。

1.2 device/sprd 目录结构
device/sprd 目录结构如图 1-1 所示。
1.jpg
子目录说明:
●common 目录
已经废弃,内容为空。
●mpool 目录
UNISOC 提供的模块配置信息和工程母板,由 UNISOC 维护,用户不可修改。
●sharkl3、sharkl5 等目录
目录名称为芯片的标识,存放同款芯片的 board。以 device/sprd/sharkl3 目录为例说明。
− sharkl3 目录:存放 s9863a 芯片的所有 board。
− sharkl3/s9863a1h10 目录:s9863a 芯片的一款 board s9863a1h10。
− sharkl3/s9863a1h10/module 目录:存放 s9863a1h10 这款 board 上,用户新增的模块,或用户对device/sprd/mpool/module 目录下模块的修改信息。该目录下的各个子目录分别代表不同的模块。
− sharkl3/s9863a1h10/product 目录:s9863a1h10 这款 board 的所有 product 顶层目录。
− sharkl3/s9863a1h10/product/s9863a1h10_Natv 目录:s9863a1h10_Natv 是 s9863a1h10 这款 board 的一个具体 product。该目录下存放 s9863a1h10_Natv 这款 product 的配置信息。
●unisoc_generic 目录
UNISOC的 SSI 配置信息,用户无需修改。
说明:s9863a 为芯片平台 SC9863A

1.3 board 配置原则
● mpool 目录是 UNISOC 提供的配置信息,禁止用户进行源码级修改。
● 用户创建、配置 board 中,对 mpool 目录下的模块添加、删除、修改、覆盖只能在自己创建的 board目录下使用 md 提供的接口或文件规范进行设置。
● 用户在工程配置文件中设定参数时,尽量避免采用“:=”、“=”、“?=”等方式直接对变量赋值,应采用“md-set”函数。

2、配置指导
用户操作主要在 device/sprd/<soc>目录下进行。device/sprd 目录下用户配置信息的创建,主要包括:
●创建新 board
●创建新 product
●创建新 module
●定制化配置模块
●定制化配置 feature

2.1 创建新 board
Android 11.0 创建一款新 board,除了在 device/sprd 目录下创建 board 配置外,还涉及到 bsp 和 vendor 目录下 board 级配置信息的创建,配置的目录和层级较多。Android 11.0 提供了自动化脚本,可以一次性完 成 device、bsp、vendor 三个目录下 board 的创建。
芯片平台自带的 board 称之为 base board,用户创建新 board,需要基于同一芯片的 base board 进行克隆。 新 board 创建完成后,用户可以手动在新 board 上进行定制化修改。
例如,在 sharkl3 目录下,创建一款新 board s9863a3h10。选取 board s9863a1h10 为 base board。
操作步骤:
步骤 1 采用如下命令进入脚本所在路径
cd vendor/sprd/tools/board_configure_tool/board-creates/
步骤 2 运行脚本创建 board,使用如下命令
./board-create.sh a11 sharkl3 s9863a arm64 s9863a1h10 s9863a3h10 4.14
说明:
board-create.sh 是 shell 脚本,在 Linux 环境下运行。该脚本有 7 个参数:
●第一个参数,Android 版本,a11(Android 11.0)、a10(Android 10.0)。
●第二个参数,存放 board 的目录名称,如 s9863a 芯片的 board 存放在 sharkl3 目录,UMS312 芯片的 board 存放在sharkl5 目录。
●第三个参数,芯片名称。如 s9863a、UMS512 等。
●第四个参数,CPU ARCH,如 arm64 或 arm。
●第五个参数,base board。例如基于 s9863a1h10 创建 s9863a3h10,第五个参数为 s9863a1h10。
●第六个参数,要创建的新 board 名称。例如基于 s9863a1h10 创建 s9863a3h10,第六个参数为 s9863a3h10。
●第七个参数,Linux 版本,5.4(kernel5.5)、4.14(kernel4.14)。用户工程一般采用 kernel4.14 版本。
----结束

2.2 创建新 product
创建新 product,指在 board 下创建特定 product 的目录及其配置文件。例如,在 s9863a3h10 board 下,创 建一款新 product s9863a3h10_New。
操作步骤:
步骤 1 在 device/sprd/sharkl3/s9863a3h10/product 目录下创建 s9863a3h10_New 目录。
mkdir device/sprd/sharkl3/s9863a3h10/product/s9863a3h10_New
步骤 2 在 device/sprd/sharkl3/s9863a3h10/product/s9863a3h10_New 目录下创建 main.mk 文件。
touch device/sprd/sharkl3/s9863a3h10/product/s9863a3h10_New/main.mk
步骤 3 在 device/sprd/sharkl3/s9863a3h10/product/s9863a3h10_New/main.mk 文件中写如下内容:
− 对于 full 版本
$(call md-inherit-product, ,full,arm64,ARMv8-a)
− 对于 go 1G 版本和 go 2G 版本
$(call md-inherit-product, ,go,arm64,armv8-a)
− 对于 go 512M
$(call md-inherit-product, ,go512,arm64,armv8-a)
说明:
md-inherit-product 函数用于指定当前 product 使用的母板,通过如下 4 个参数选择母板:
●第一个参数:product 母板路径,缺省为默认母板。
●第二个参数:go、full 版本。Google 规定,内存低于等于 2GB 为 go 设备。
●第三个参数:cpu 类型,arm 或 arm64。
●第四个参数:cpu 版本,ARMv7、armv8、armv8-a 等。
----结束

更多详细内容请下载附件查看
2022-1-10 14:48 上传
文件大小:
1.59 MB
下载次数:
33
本地下载

16RD supports Paypal , Payment is calculated at the exchange rate of the day. Unable to download please contact 18902843661 (WhatsApp OR wechat number)

关于一牛网在微软浏览器(Microsoft Edge、IE浏览器)警报通告&解决方案!(无法下载直接更换浏览器即可)

*附件为作者发布,与本站无关,如有侵权,请联系客服删除

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

合作/建议

TEL: 19168984579

工作时间:
周一到周五 9:00-11:30 13:30-19:30
  • 扫一扫关注公众号
  • 扫一扫打开小程序
Copyright © 2013-2024 一牛网 版权所有 All Rights Reserved. 帮助中心|隐私声明|联系我们|手机版|粤ICP备13053961号|营业执照|EDI证
在本版发帖搜索
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表