MDM9205开发环境搭建与编译调试
前言
如题,这篇文章说的是高通mdm9205这颗物联网芯片,从官方资源的获取(包括文档、代码、软件工具等等)到如何编译出可运行固件的方法。
对经历了不止一次这颗芯片开发的我来说,在过程中遇到问题,除了寄希望于可能在工作日第二天凌晨得到的case回复,有一篇最新的有指导方向的文档真的太重要了。希望这篇文章可以帮助到正在看的你。
准备工作
获取途径
高通对外部开放的资源是有限的,包括文档资料和代码工具等等,需要得到高通公司内部授权才能进行下载和使用。这恐怕也是为什么目前能搜索到的开放高通资料普遍零散且匮乏的原因吧(可能还有保密信息的考虑)。所以如果你是公司的人,首先就需要能联系到高通的对接人,审核注册的邮箱账号,后续都通过该账号登录高通的网站和软件工具。
创建账号
https://myaccount.qualcomm.com/signup
官网资源网站
https://createpoint.qti.qualcomm.com/
Createpoint资源网站上,包括高通很多芯片的型号,需要和高通对接人沟通明确需要授权的型号,开放的资源包括文档、基线代码、编译链工具、提case的权限。这些是开发需要的几项基本的高通资源,如果其他同事比如商务需要子账户管理等等相关权限,就一并提出。
注意:开发前电脑硬盘预留至少30G,给基线代码和编译链工具等等必要的安装存放空间。
文档
搜索框中输入文档特定的编码,或者需要查找的相关单词,搜索到点击下载即可。

工具
搜索框中输入工具相关的单词,下方可以勾选工具是在Linux还是windows开发环境中使用,右侧点击下载相应的工具即可,如下图2,注意确认好工具的版本号再下载(版本号下方“工具下载”会说明)。


除上述编译链,调试设备还需要用到更多高通官方的软件工具,在QPM网站的Tools页面,搜索“QPM3”(Qualcomm Package Manager 3),下载安装到本地备用,后续包括QXDM、PCAT、QUTS等等都需要在该软件中搜索下载。
代码
如下图,Project和Define Release由高通内部配置好权限后就可以查看到,右侧点击跳转oem后缀的基线代码下载即可。

各编译链
安装编译链之前,先搜索你下载的基线代码对应的Release note,其中包含基线配置的大致指导步骤(多数只对linux环境有用,且很多细节的修改没有提及)。以下用《RNO-230111212424-00058.1 Release Note for MDM9205.TX.2.1》文档,编译环境Windows+Linux为例(因为我的windows下无法完成TZ和MPSS的编译,咨询高通未解决,所以TZ和MPSS两个分区在linux中运行编译命令)。
工具下载
如下图,看第3章Getting Started和第4章Build Instructions的内容。注意第3章Getting Started 表格部分,各分区需要的编译链和版本号各不相同,下载前一定要关注。


根据前述“准备工作-工具”小节,下载高通的编译链给linux环境使用,包括:Snapdragon LLVM ARM Toolchain for Linux 4.0.11,Hexagon LLVM Toolchain Release for Linux 8.3.03。给windows环境使用的Snapdragon LLVM ARM Toolchain for Windows 4.0.11。
另外需要下载三个编译链工具给windows环境使用,一个工具组件给linux使用,否则编译无法完成。这几个都不是高通提供的,但要用于辅助BOOT,RPM和MPSS分区完成编译。分别是:
1. gcc-linaro-aarch64-none-elf-4.9-2014.07_win32
2. gcc-linaro-arm-linux-gnueabihf-4.9-2014.05
3. RVCT 4.0
4. nanopb
windows要
相关文章:
MDM9205开发环境搭建与编译调试
前言 如题,这篇文章说的是高通mdm9205这颗物联网芯片,从官方资源的获取(包括文档、代码、软件工具等等)到如何编译出可运行固件的方法。 对经历了不止一次这颗芯片开发的我来说,在过程中遇到问题,除了寄希望于可能在工作日第二天凌晨得到的case回复,有一篇最新的有指导方…...
Linux操作系统使用及C高级编程-D3Linux shell命令(权限、输入输出)
Shell 是一种应用程序,用以完成用户与内核之间的交互 一个功能强大的编程语言(C语言) 一个解释执行的脚本语言,不需要编译,写完直接执行 目前Linux 乌班图的Shell默认是bash 查看当前提供的Shell:cat /…...
无线充,大功率小家电,智能家居,无人机快速充电等产品供电 LDR6328S芯片TYUPE-C PD诱骗电压 USB-C解决PD电源取电问题
LDR6328S 是乐得瑞科技有限公司开发的一款兼容 USB PD、QC 和 AFC 协议的 Sink 控制器。 LDR6328S 从支持 USB PD、QC 和 AFC 协议的适配器取电,然后供电给设备。比如可以配置适配器输 出需要的功率,给无线充电器设备供电。LDR6328S 也兼容传统 USB 电源…...
2023数字科技生态大会-数字安全论坛 学习笔记
监管合规->价值创造的方向,在安全领域的发展方向-安全运营服务型 ICT->数字->数据 数字安全:网络安全数据安全 传统信息化以计算为核心,数字化以数据为核心 数字安全技术发展十大趋势: 一、 数字安全技术政策环境将不…...
玩转ChatGPT:ARIMA模型定制GPT-1.0
一、写在前面 好久不更新咯! OpenAI又推出了GPT的一系列重大更新,其中GPTs深得我心啊。 GPTs允许用户创建自定义的ChatGPT版本,以满足自己各种特定需求。其核心理念在于,用户可以为不同的场景和任务创建定制化的ChatGPT。这意味…...
CSDN每日一题学习训练——Java版(字符串相乘、子集、删除链表的倒数第 N 个结点)
版本说明 当前版本号[20231112]。 版本修改说明20231112初版 目录 文章目录 版本说明目录字符串相乘题目解题思路代码思路补充说明参考代码 子集题目解题思路代码思路参考代码 删除链表的倒数第 N 个结点题目解题思路代码思路参考代码 字符串相乘 题目 给定两个以字符串形…...
PostgreSQL 判断JSONB数组是否包含特定的元素
文章目录 前言Integer类型的数组char类型的数组 前言 要判断一个JSONB数组是否包含特定的元素,可以使用>操作符。 Integer类型的数组 -- 是否包含数字3 SELECT [1, 2, 3, 4, 5]::jsonb > [3]::jsonb; -- true -- 是否包含数字3 SELECT [1, 2, 13, 4, 5]::js…...
idea中搭建Spring boot项目(借助Spring Initializer)
创建新项目 启动端口 在项目配置文件application.properties中写入 #启动端口server.port8088编写测试方法 创建控制类文件夹–>便于规范我们新建一个controller包–>建一个HelloWorld.class package com.example.hellospringboot.controller;import org.springframew…...
acwing算法基础之搜索与图论--染色法判断二分图
目录 1 基础知识2 模板3 工程化 1 基础知识 二分图:每条边连接的起点和终点,分别属于集合A和集合B。 一个图是二分图,当且仅当,图中不含奇数环(即,回环中的结点数目是奇数)。 染色法判定二分…...
塔式服务器是什么服务器?
在当今数字时代,数据的处理和存储需求不断增长,企业和组织需要强大而可靠的服务器来支持其业务运营和数据管理。塔式服务器作为一种常见的服务器架构,以其出色的性能、灵活性和可扩展性成为了许多企业和组织的首选。 塔式服务器的外观类似于…...
nodejs+express接口全局拦截和环境变量设置
前言: 本例中必须安装的依赖包有:express、cookie-parser(可以没有) 1. 接口全局拦截 新建一个文件intercept.ts,编写拦截过程 import express from "express"; import cookieParser from cookie-parserconst ssoRouter expre…...
深度学习之基于YoloV5的目标检测和双目测距系统
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 双目测距系统利用两个相机的图像来计算目标到相机的距离。通过对左右相机图像进行立体匹配,可以获得目标…...
如何显示标注的纯黑mask图
文章目录 前言一、二分类mask显示二、多分类mask显示 前言 通常情况下,使用标注软件标注的标签图看起来都是纯黑的,因为mask图为单通道的灰度图,而灰度图一般要像素值大于128后,才会逐渐显白,255为白色。而标注的时候…...
【算法每日一练]-图论(保姆级教程 篇1(模板篇)) #floyed算法 #dijkstra算法 #spfa算法
今天开始讲图论 目录 图的存储 算任意两点的最短路径: floyed算法: 算一个点到其他所有点的最短距离 dijkstra算法: spfa算法: 图的存储 其实:邻接矩阵和链式向前星都能存边的信息,vector只能存点的信息,再搭配上v[]…...
c语言数据结构---十字链表
#include<stdio.h> #include<stdlib.h> typedef struct node{//十字链表 输入三元组返回矩阵 int row,col,val;struct node *down,*right; }JD,*J; typedef struct {J *rhead,*chead;int mu,nu,tu;//行列非0元 }CS; CS creat(CS M){int m,n,t;;int k,j,e;JD *p,*q…...
使用python电脑轻量级控制手机—adb命令和手机投屏
文章目录 一、通过无线连接手机和电脑二、使用adb命令轻量级控制手机二、使用scrcpy控制手机 通过电脑控制手机有多种方式如appnium等,本文介绍的是两种轻量级的方案,使用adb命令刚和手机投屏。 一、通过无线连接手机和电脑 1、手机设置 开发者选项—us…...
VBA技术资料MF82:替换文件夹中文件名中的字符
我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。我的教程一共九套,分为初级、中级、高级三大部分。是对VBA的系统讲解,从简单的入门,到…...
如何利用大模型蒸馏出小模型实现降本
如何让小模型的推理效果在某些领域比 ChatGPT 这样的大模型还要更强?这篇论文提供了一个思路:https://arxiv.org/abs/2212.10071,借助思维链(CoT)逐步解决复杂推理任务的能力,可以使用大模型作为推理教师&a…...
CentOS 中启动 Jar 包
在 CentOS 中启动一个 Jar 包,可以通过 java 命令来实现。具体步骤如下: 确认 Java 环境已经安装并配置好了。 打开终端或者 SSH 连接到 CentOS 服务器。 执行以下命令启动 Jar 包: 复制插入 java -jar /path/to/your/jar/file.jar复制插…...
法治智能起航 | 拓世法宝AI智慧政务一体机重塑法治格局,开启智能司法新篇章
在科技的巨轮推动下,我们的社会正快速迈向一个以数据和智能为核心的新时代。在这个波澜壮阔的变革中,人工智能(AI)显得尤为突出,它不仅是科技进步的象征,更是未来发展的助力者。 2023年,最高人…...
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
