确定msm8937+android7.1采用的dtb文件

先来看入口kernel\msm-3.18\arch\arm\boot\dts\qcom\Makefile

dtb-$(CONFIG_ARCH_MSM8937) +=msm8937-rumi.dtb \

msm8937-pmi8950-cdp.dtb\

msm8937-pmi8937-cdp.dtb\

msm8937-pmi8950-ext-codec-cdp.dtb\

msm8937-pmi8950-mtp.dtb\

msm8937-pmi8937-mtp.dtb\

msm8937-pmi8950-rcm.dtb\

msm8937-pmi8937-rcm.dtb\

msm8937-pmi8950-qrd-sku1.dtb\

msm8937-pmi8937-qrd-sku2.dtb\

msm8937-pmi8950-qrd-sku1-dvt1.dtb\

msm8937-pmi8937-qrd-sku2-dvt1.dtb\

apq8037-pmi8950-cdp.dtb\

apq8037-pmi8937-cdp.dtb\

apq8037-pmi8950-mtp.dtb\

apq8037-pmi8937-mtp.dtb

我们怎么知道我们的设备对应的是哪个dtb呢?有两种方法:

(1)  通过启动的log信息

[   1.002606] Hardware name: Qualcomm Technologies, Inc. MSM8937-PMI8937 QRDSKU2 (DT)

这里很明显可以看出来对应的msm8937-pmi8937-qrd-sku2.dtb。

(2)  根据硬件信息、代码及设备树信息判断

CPU:msm8937

PMIC:pmi8937

根据这两个信息得到msm8937-pmi8937-qrd-sku2.dtb和msm8937-pmi8937-qrd-sku2-dvt1.dtb,那是用哪个呢先看\bootable\bootloader\lk\platform\msm_shared\board.c的platform_detect()中的一部分

125行:描述msm_id,对应于CPU,比如Msm8937,其值对应sem.h的枚举成员:MSM8937 = 294,对应msm8937.dtsi文件的qcom,msm-id = <2940x0>;属性值中的294.

126行:platform_version,8937暂时没用到。

127行:描述于Platform Type ID,这里为0xb,对应qrd,相当于smem.h的定义:

enum platform {

HW_PLATFORM_UNKNOWN= 0,

HW_PLATFORM_MTP= 8,

HW_PLATFORM_QRD= 11,

HW_PLATFORM_32BITS= 0x7FFFFFFF,

};

对应于msm8937-pmi8937-qrd-sku2.dts文件的qcom,board-id= <0x12000b 0>;

\kernel\Documentation\devicetree\bindings\arm\msm\board-id.txt文件的解释如下:

The cell layout of the qcom,board-idproperty is as follows:

qcom,board-id =

where board_id is a 32-bit integer whosebit values are defined as follows:

bits 31-24 = Platform Subtype ID

bits 23-16 = Platform Version (Major)

bits 15-8 = Platform Version(Minor)

bits 7-0 =Platform Type ID

我们这里board_id=0x12000b,可知Platform Type ID=0xb=11,Platform Version(Minor)=0x00=0,Platform Version (Major)=0x12=18,Platform Subtype ID=0x00=0,这和串口打印信息是一致的:B-    390766 - CDT version:3,PlatformID:11,Major ID:18,Minor ID:0,Subtype:0

128行:描述Platform Subtype ID,这里为0x00

接着看bootable\bootloader\lk\target\msm8952\oem_panel.c下的oem_panel_select()对HW_PLATFORM_QRD的处理

上面我们知道plat_hw_ver_major=0x12=18,所以可以通过这里知道我们是SKU1还是SKU2,我们设备是SKU2。

到此可以知道采用的是msm8937-pmi8937-qrd-sku2.dtb,此文件由哪些dtsi文件组成呢?后面再描述。

参考:

高通 MSM8K bootloader : SBL1 .

android dtb文件位置_确定msm8937+android7.1采用的dtb文件相关推荐

  1. 确定msm8937+android7.1采用的dtb文件

    确定msm8937+android7.1采用的dtb文件 先来看入口kernel\msm-3.18\arch\arm\boot\dts\qcom\Makefile dtb-$(CONFIG_ARCH_ ...

  2. mysql遍历 xml文件路径_解决Mapper接口和mapper.xml的文件位置问题

    今天遇到一个问题是mybatis中接口和对应的mapper文件位置不同,而引起的操作也会不同,在网上找了好久最终找到了方法,这里就简单的解析一下: 我们知道在典型的maven工程中,目录结构有:src ...

  3. python定位文件位置_在Python中定位文件位置

    tell()方法告诉您文件中的当前位置:换句话说,下一次读取或写入将发生在从文件开头开始的那么多个字节处. seek(offset [,from])方法更改当前文件位置.offset参数指示要移动的字 ...

  4. epic启动器在哪个文件夹_启动时|原神启动器在哪个文件中 启动器文件位置一览_234游戏网...

    原神手游中启动器在哪个文件中呢?游戏即将进行全新的版本更新,在本次的版本更新后,玩家想要打开游戏就必须打开启动器才能够获取全新的版本,但是很多玩家不知道启动器的具体位置,也不知道在哪个文件中找,接下来 ...

  5. java的sdk在哪个文件夹_我的计算机中的Java SDK文件夹在哪里? Ubuntu 12.04

    我知道它的安装,因为当我键入: $java -version 我得到: OpenJDK Runtime Environment (IcedTea6 1.12.5) (6b27-1.12.5-0ubun ...

  6. cmd 删除文件夹_永远不要碰的5个macOS文件夹及原因

    macOS有一个深度和嵌套的文件夹结构,默认的macOS安装有许多听起来不熟悉的目录.大多数用户根本不需要接触这些文件.苹果隐藏某些文件夹是有原因的.打乱这些目录可能会导致系统不稳定,数据丢失,或者更 ...

  7. python读压缩文件内容_使用Python读写及压缩和解压缩文件的示例

    读写文件 首先看一个例子: f = open('thefile.txt','w') #以写方式打开, try: f.write('wokao') finally: f.close() 文件的打开方式: ...

  8. c盘java文件误删_电脑清理C盘时误删重要文件如何恢复

    我们都知道C盘是电脑的系统盘,储存很多重要的文件.windows系统在下载软件的时候,如果不更改存放位置,系统会默认放在C盘中,时间久了堆积大量文件,系统运行速度变慢.定期清理C盘文件可以加快运行速度 ...

  9. finder刷新文件夹_如何在OS X Finder中自定义文件夹视图

    finder刷新文件夹 Any location in OS X has options to change its view. The best part is you can set each l ...

  10. h5页面怎么处理文件流_一种H5页面效果生成视频文件的方法及系统与流程

    本发明涉及计算机技术领域,尤其涉及一种H5页面效果生成视频文件的方法及系统. 背景技术: 现有的视频合成方法均是将视频需要合成的各个元素拆分出来,针对每个元素进行合成视频,复杂度高,一旦需要添加新的动 ...

最新文章

  1. 资料分享:数学建模资料分享 -- 图论部分
  2. UPS对发电机组的影响
  3. Qt / 如何解决移动了 Qt 的项目,但是 Qt 在原目录下生成编译文件的问题
  4. atcoder A - Frog 1(DP)
  5. 感谢相信你鼓励你的人
  6. 哈密顿图 哈密顿回路 哈密顿通路(Hamilton)
  7. 1941套站点模版,终生收藏,个个精品
  8. 面试官常问的线程池,你真的了解吗?
  9. netlogo笔记(4):森林火灾模拟与模型改进
  10. Unity之AB包的创建加载
  11. 从不跑步到无间断跑步1年感受
  12. 手机开热点但是电脑一直连接不上_电脑连接不上手机热点解决办法
  13. 4.2 Branching Strategies
  14. Java验证中文汉字、英文字母、标点符号一个字符占多少字节
  15. Snapman设计中的思考
  16. Fluter基础巩固之Dart语言详解一
  17. php中do..while的用法,do while语句的用法是什么
  18. 功能测试与非功能测试
  19. cocos creator 打包ios 构建失败
  20. python图像数据分析,【笔记】python数据分析——应用案例之图像负片

热门文章

  1. 编程实现类Logo语言(海龟语言)
  2. Centos 搭建 FastFDS 分布式文件存储系统
  3. 使用ZUNE从marketplace安装wp7 app的方法
  4. linux桌面图标大小,ubuntu17.10修改桌面图标大小的方法
  5. 量子计算学习笔记:量子计算发展史
  6. 解决Please define the NDK_PROJECT_PATH variable to point to it.
  7. 博弈论学习 | 第六章 Games
  8. 记一次被200G流量 DDOS攻击的处理经验
  9. 如何理解t检验、t分布、t值?
  10. 已知鸡兔共35只c语言,三支一扶行测备考数量关系:简单计算之鸡兔同笼