欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

高通公司平台的安卓代码结构

最编程 2024-06-21 15:03:28
...

image.png 高通android源代码分为开发源代码和专有源代码部分,专有源代码又分为专有非HLOS软件和专有HLOS软件,HLOS是High-level Operating System高级操作系统,非HLOS软件是指HLOS层以下的软件。

  1. 代码下载 (1) 专有代码 从高通chipcode.qti.qualcomm.com/下载QTI专有软件,包…

(2) 开源代码 打开从ChipCode中(也就是第(1)中)下载的contents.xml文件,然后搜索apps标记。在该标记下找到<build_id>标记。这个标记确定了相应的开源HLOS软件版本,如 LA.UM.7.6.2.r1-10300-89xx.0,按照www.codeaurora.org/xwiki/bin/Q… release部分下方)所列说明在发布软件中查找APSS版本ID。

image.png 然后可以用repo命令下载 repo init -u source.codeaurora.org/quic/la/pla… -b release -m LA.UM.7.6.2.r1-10300-89xx.0.xml --repo-url=git://codeaurora.org/tools/repo.git --repo-branch=caf-stable repo sync

  1. 代码合成和高通代码结构 2.1 代码合成

这是代码目录结构,其中LA.UM.7.6.2\LINUX\android是系统源代码,另外需要从专有HLOS发布包中将vendor/qcom/proprietary目录拷贝到android目录下。

image.png 2.2 高通代码结构 下面以msm8953_64来举例说明高通代码所在位置。 (1) bootable\bootloader\lk部分 引导程序部分

image.png

(2) device\qcom部分 这主要是关于配置、build、overlay、tools、属性设置、rc文件等部分的

image.png

(3) hardware\qcom部分 高通平台HAL层 (4) vendor\qcom 和高通具体硬件相关的kernel和proprietary部分代码, 比如对于kernel部分,开源的音频和高通具体硬件相关的驱动(ASoCdriver –Comprised of the machine driver, FE and BE drivers, routing driver, platform drivers, andcodec driver)位于vendor\qcom\opensource\audio-kernel\asoc\msm8952.c下(之前位于kernel\msm-3.18\sound\soc\msm\msm8952.c) 比如对于proprietary部分,camera位于vendor\qcom\proprietary\mm-camera下面。

(5) kernel部分 内核配置文件arch\arm64\configs\ msm8953-evb_defconfig和msm8953-evb-perf_defconfig,从device\qcom\msm8953_64\AndroidBoard.mk可以知道

image.png

设备树,比如evb采用kernel\msm-4.9\arch\arm64\boot\dts\qcom\evb下面的,只把需要用到的设备树文件放在evb下面。

推荐阅读