Qualcomm Device Loader (QDL) 是一款面向 Qualcomm 设备的跨平台命令行刷写工具。当您需要对刷写过程进行完全控制、在无图形界面(headless)环境中运行,或希望编写自动化刷写脚本时,请使用此方法。
如需基于 GUI 的替代方案,请参见 使用 Qualcomm Launcher 刷写 Qualcomm Linux。
刷写会清除设备上的所有数据。开始之前请备份所有重要内容。
所需材料
- IQ-8275 EVK 及 12 V 电源
- USB Type-C 线缆(EVK 上的 USB0 端口 → 主机)
- 运行 Ubuntu、Windows 或 macOS 的主机
选择您的主机操作系统并按完整流程操作
从 Qualcomm Software Center 下载适用于您主机操作系统的 QDL。
下载 Qualcomm Linux 镜像
-
下载 Qualcomm Linux 镜像。
-
解压 zip 文件
可刷写的构件位于:
其中
<path-to-image> 是解压镜像 zip 时创建的文件夹。
下载 QDL
-
下载 适用于 Linux (x64) 的 QDL 工具 并解压。解压后的文件夹包含
qdl 二进制文件 — 下文中称为 <qdl_dir>。
-
安装所需的库(如已安装可跳过):
我们建议将镜像和 QDL 解压到同一个父文件夹中。这样所有路径都在同一根目录下,便于在 provision、SAIL 和镜像文件夹之间切换。
设置 QDL 驱动
Ubuntu 需要一条 udev 规则,以便设备进入 EDL 模式时内核授予您的用户与设备通信的权限。
-
检查该规则是否已存在:
-
如果该文件不存在,用一条命令创建它:
如果该文件已存在,请确认规则是否在其中:
-
重新加载 udev 以应用规则:
如果 USB 线缆已经连接,请断开后重新连接。
设置 QDL
-
使 QDL 可执行:
-
验证 QDL 是否正常工作:
您应当看到 QDL 的用法输出。如果出现错误,请检查路径。
使设备进入 EDL 模式
-
打开 SW2-3 DIP 开关 — 将其向上推。
-
将 12 V 电源连接到 EVK。
-
用 USB Type-C 线缆将 EVK 上的 USB0 连接到主机。
-
拨动电源开关为设备上电。
-
确认设备处于 EDL 模式:
预期输出:
如果设备未出现,请重新检查 SW2-3 和 USB-C 线缆。
配置 UFS 分区(Provision UFS)
UFS(通用闪存存储)分区配置将内部存储划分为多个独立的逻辑单元号(LUN),每个 LUN 专用于某种类型的数据(启动、系统、用户数据等)。这样可以提高访问效率,并使分区布局在多次刷写之间保持一致。如果符合以下任一情况,请执行 UFS 分区配置:
- 这是从未刷写过的全新板卡。
- 您正在升级到新的镜像版本。
- 您正在切换发行版(Qualcomm Linux ↔ Ubuntu)。
-
下载并解压 provision 文件:
-
从解压后的 provision 目录执行 UFS 分区配置:
预期输出:
UFS 分区配置完成后,设备会从 USB 断开。请先关闭再打开电源开关,使设备重新进入 EDL 模式后再继续。
刷写 SAIL 固件
Safety Island (SAIL) 是 IQ-8275 EVK 上一个独立、隔离的处理器,独立于主应用处理器处理安全关键功能。其固件位于专用的 spinor 闪存分区上,必须在主操作系统镜像之前单独刷写。
-
进入解压后镜像中的
sail_nor 子文件夹:
-
刷写 SAIL 固件:
预期输出:
如果刷写失败,请参见如何排查刷写相关问题。
刷写 Qualcomm Linux
-
进入主镜像文件夹:
-
刷写镜像:
当最后一行显示如下内容时,刷写即完成:
刷写过程中出现的任何扇区截断(sector-truncation)警告都是无害的。
下载 Qualcomm Linux 镜像
-
下载 Qualcomm Linux 镜像
-
解压 zip 文件
可刷写的构件位于:
其中
<path-to-image> 是解压镜像 zip 时创建的文件夹。
下载 QDL
-
下载 适用于 Windows 的 QDL 工具 并解压。
我们建议将镜像和 QDL 解压到同一个父文件夹中(例如 C:\Users\you\Downloads\qualcomm-flash\)。这样所有路径都在同一根目录下,便于在 provision、SAIL 和镜像文件夹之间切换。
设置 QDL 驱动
-
卸载任何现有的 Qualcomm USB 驱动(QUD)— 它们与 QDL 驱动冲突。打开设备管理器,找到您的设备,并卸载任何现有驱动。设备不应出现在 COM 端口下。
-
从解压后的 QDL 文件夹中运行
install_driver.bat 以安装 WinUSB 驱动。
使设备进入 EDL 模式
-
打开 SW2-3 DIP 开关 — 将其向上推。
-
将 12 V 电源连接到 EVK。
-
用 USB Type-C 线缆将 EVK 上的 USB0 连接到主机。
-
拨动电源开关为设备上电。
-
打开设备管理器,确认出现一个 Qualcomm USB 设备(不在 COM 端口下)。
配置 UFS 分区(Provision UFS)
UFS(通用闪存存储)分区配置将内部存储划分为多个独立的逻辑单元号(LUN),每个 LUN 专用于某种类型的数据(启动、系统、用户数据等)。这样可以提高访问效率,并使分区布局在多次刷写之间保持一致。如果符合以下任一情况,请执行 UFS 分区配置:
- 这是从未刷写过的全新板卡。
- 您正在升级到新的镜像版本。
- 您正在切换发行版(Qualcomm Linux ↔ Ubuntu)。
-
下载 provision.zip 并解压。
-
进入解压后的 provision 文件夹:
-
执行 UFS 分区配置(将
<qdl_dir> 替换为您的 QDL 文件夹路径):
命令提示符(Command Prompt):
PowerShell:
预期输出:
UFS 分区配置完成后,设备会从 USB 断开。请先关闭再打开电源开关,使设备重新进入 EDL 模式后再继续。
刷写 SAIL 固件
Safety Island (SAIL) 是 IQ-8275 EVK 上一个独立、隔离的处理器,独立于主应用处理器处理安全关键功能。其固件位于专用的 spinor 闪存分区上,必须在主操作系统镜像之前单独刷写。
-
进入镜像目录中的
sail_nor 子文件夹:
-
刷写 SAIL 固件(将
<qdl_dir> 替换为您的 QDL 文件夹路径):
命令提示符(Command Prompt):
PowerShell:
预期输出:
如果刷写失败,请参见如何排查刷写相关问题。
刷写 Qualcomm Linux
-
进入主镜像文件夹:
-
刷写镜像(将
<qdl_dir> 替换为您的 QDL 文件夹路径 — Windows 不支持通配符,需显式列出所有文件):
命令提示符(Command Prompt):
PowerShell:
当最后一行显示如下内容时,刷写即完成:
下载 Qualcomm Linux 镜像
-
下载 Qualcomm Linux 镜像。
-
解压 zip 文件
可刷写的构件位于:
其中
<path-to-image> 是解压镜像 zip 时创建的文件夹。
下载 QDL
-
下载 适用于 macOS (Apple Silicon) 的 QDL 工具 并解压。解压后的文件夹包含
qdl 二进制文件 — 下文中称为 <qdl_dir>。有关工具使用详情,请参见该文件夹中的 QDL_User_Guide。
我们建议将镜像和 QDL 解压到同一个父文件夹中。这样所有路径都在同一根目录下,便于在 provision、SAIL 和镜像文件夹之间切换。
设置 QDL 路径
- 通过 Homebrew 安装所需的库(如已安装可跳过):
brew install 失败?安装 Homebrew 实用工具
Brew(正式名称为 Homebrew)是一款软件包管理器,允许您在 Mac 终端中使用文本命令安装、更新和删除程序。请按照以下步骤安装 Homebrew。1. 安装 xcode2. 运行 Homebrew 安装命令3. 将 Homebrew 添加到 shell 的 PATH添加以下行4. 应用更改5. 验证安装预期输出:
-
使 QDL 可执行,并清除 macOS 的隔离(quarantine)标记,以便 Gatekeeper 允许其运行:
需要 sudo,因为某些捆绑的库是只读的。如果此步骤之后 macOS 仍然阻止该工具运行,请在系统设置 → 隐私与安全性中允许它。
-
验证 QDL 是否正常工作:
您应当看到 QDL 的用法输出。如果出现错误,请检查路径。
使设备进入 EDL 模式
-
打开 SW2-3 DIP 开关 — 将其向上推。
-
将 12 V 电源连接到 EVK。
-
用 USB Type-C 线缆将 EVK 上的 USB0 连接到主机。
-
拨动电源开关为设备上电。
-
确认设备处于 EDL 模式:
预期输出:
Product ID: 0x9008 确认设备处于 EDL 模式。如果未出现,请重新检查 SW2-3 和 USB-C 线缆。
配置 UFS 分区(Provision UFS)
UFS(通用闪存存储)分区配置将内部存储划分为多个独立的逻辑单元号(LUN),每个 LUN 专用于某种类型的数据(启动、系统、用户数据等)。这样可以提高访问效率,并使分区布局在多次刷写之间保持一致。如果符合以下任一情况,请执行 UFS 分区配置:
- 这是从未刷写过的全新板卡。
- 您正在升级到新的镜像版本。
- 您正在切换发行版(Qualcomm Linux ↔ Ubuntu)。
-
下载 provision.zip 并解压:
-
将 provision 文件和 QDL 二进制文件移动到同一文件夹,然后在该文件夹中运行:
在 macOS 上,qdl 二进制文件及其支持库必须与 provision 文件位于同一目录中。请将 provision 文件复制到 <qdl_dir> 中,然后在那里运行命令。
预期输出:
UFS 分区配置完成后,设备会从 USB 断开。请先关闭再打开电源开关,使设备重新进入 EDL 模式后再继续。
刷写 SAIL 固件
Safety Island (SAIL) 是 IQ-8275 EVK 上一个独立、隔离的处理器,独立于主应用处理器处理安全关键功能。其固件位于专用的 spinor 闪存分区上,必须在主操作系统镜像之前单独刷写。
-
进入解压后镜像中的
sail_nor 子文件夹:
-
刷写 SAIL 固件:
预期输出:
如果刷写失败,请参见如何排查刷写相关问题。
刷写 Qualcomm Linux
-
进入主镜像文件夹:
-
刷写镜像:
当最后一行显示如下内容时,刷写即完成:
刷写过程中出现的任何扇区截断(sector-truncation)警告都是无害的。
如果刷写在任何环节失败,请断开 USB 线缆和电源,重新连接后从 EDL 模式步骤开始重试。
- 关闭 SW2-3 DIP 开关 — 将其向下推。
- 重新上电设备。设备将启动进入新刷写的 Qualcomm Linux 镜像。
后续步骤
继续阅读 设置设备,连接调试 UART、验证软件版本,并启用网络、SSH 和显示。