4. 目标设备进入 EDL 模式:按键组合、ADB 命令、9008 端口确认

EDL(Emergency Download)模式是高通平台底层烧录的强制入口,设备在此模式下通过 9008 端口与主机通信,绕过系统引导直接访问原始存储。进入 EDL 有四种常用方法:硬件按键组合、ADB 命令、短接测试点以及工程线触发。本章聚焦前三种在生产与调试中最安全、可重复的方案。

4.1 EDL 模式进入方式对比

进入方式前置条件适用场景成功率风险等级
按键组合设备能上电、按键正常变砖、开机循环、无法进入系统高低
ADB 命令系统可启动、USB 调试已开启正常系统下的快速切换高低
短接测试点拆机、短接工具、主板图纸按键损坏、其他方法失效中中(需谨慎操作)
工程线专用 USB 线(D+短接)工厂产线场景极高低
核心目标:设备在 USB 枚举时显示 “Qualcomm HS-USB QDLoader 9008” 端口,即表示已成功进入 EDL。

4.2 按键组合进入 EDL(无系统依赖)

此方法不依赖任何软件状态,在设备完全断电后执行。不同厂商按键定义有差异,以下为高通参考平台的通用序列:

  1. 长按 音量上 + 音量下 + 电源键 持续 5~8 秒,保持所有键不放。
  2. 插入 USB 数据线连接 PC(设备端需先断开电池或保持断电状态,部分设备需拔掉电池再装回)。
  3. 观察 PC 设备管理器或终端输出,确认端口出现后松开按键。
如果第一次未成功,尝试先短按电源键唤醒主控,再同时按下组合键。部分设备要求先插入 USB 再同时按键,请根据 OEM 文档调整顺序。

常见按键组合速查表:

厂商/芯片按键组合备注
Qualcomm 标准VOL+ + VOL- + POWER适用于大多数骁龙 6/7/8 系列
小米/RedmiVOL- + POWER(断开电池后)部分机型需要先拆除电池排线
三星 Exynos+高通VOL- + POWER + Bixby保持至屏幕无显示且振动一次
联发科(非高通)不适用MTK 使用 Preloader / BROM 模式

4.3 通过 ADB 命令进入 EDL(系统级触发)

条件:设备已正常开机,USB 调试已开启,且主机 adb 可正常发现设备。

adb reboot edl

执行后设备会立即黑屏并重新枚举为 9008 模式,无需其它操作。如果系统未正确响应,检查 adb 连接状态:

adb devices
# 预期输出:
# List of devices attached
# a1b2c3d4     device

仅当状态为 device(而非 offline 或 unauthorized)时才能生效。若出现 error: no devices/emulators found,请重新插拔 USB 并确认驱动已安装。

部分定制系统(如 MIUI、ColorOS)可能屏蔽 adb reboot edl 指令,此时会返回 error: reboot mode 'edl' not found。替代方案:adb reboot bootloader 进入 fastboot,然后使用 fastboot oem edl,但该命令需要 unlock 权限。

4.4 确认 9008 端口(主机端验证)

无论通过哪种方式触发,主机端必须正确识别到 Qualcomm HS-USB QDLoader 9008 端口。以下为各平台确认方法:

Windows

打开设备管理器(devmgmt.msc),展开 端口 (COM 和 LPT)。若见到 Qualcomm HS-USB QDLoader 9008 (COMx),端口号即烧录工具后续需要填写的 COM 口(如 COM3)。

# 也可通过命令行定位(Powershell 管理员):
Get-PnpDevice | Where-Object {$_.FriendlyName -match "QDLoader"}
# 输出示例:
# Status     Class           FriendlyName
# ------     -----           ------------
# OK         Ports           Qualcomm HS-USB QDLoader 9008 (COM4)

Linux

lsusb | grep -i qualcomm
# 输出示例:
# Bus 001 Device 003: ID 05c6:9008 Qualcomm, Inc. Gobi Wireless Modem (QDL mode)
#
# 确认 tty 节点
dmesg | tail -20 | grep -i "ehci\|qdloader\|ttyUSB"
# 输出示例:
# [ 1234.567890] usb 1-2: Product: QUSB_BULK
# [ 1234.567891] usbcore: registered new interface driver qcserial
# [ 1234.567892] option 1-2:1.0: GSM modem (1-port) converter detected
# [ 1234.567893] usb 1-2: GSM modem (1-port) converter now attached to ttyUSB0

macOS

system_profiler SPUSBDataType | grep -A 10 "Qualcomm"
# 在输出中查找 "Product ID: 0x9008"

ioreg -p IOUSB -l -w 0 | grep -i "9008"
# 确认 io 节点存在
无论哪种系统,核心标志都是 VID=05c6、PID=9008,以及类名包含 "QDLoader" 或 "9008" 字样。

4.5 常见错误与排查

现象:设备管理器显示 "Qualcomm HS-USB Diagnostics 9006" 或 "QHSUSB_BULK",而非 9008。

原因:设备未完全进入 EDL,可能停留在诊断模式或刷机模式分支。解决方案:重新尝试按键组合,确保在插入 USB 的瞬间设备主控处于未初始化状态。若使用 ADB 命令,尝试先进入 fastboot 再 fastboot oem edl。

现象:Windows 设备管理器没有出现任何 Qualcomm 端口。

原因:驱动未安装或 USB 线缆不兼容。确认已安装 QPST 自带的驱动(或单独安装 Qualcomm USB 驱动)。更换 USB 2.0 端口和原装线缆,避免使用延长线。

现象:Linux 下 lsusb 显示 05c6:9008,但 /dev/ttyUSB0 没有权限。

解决:将当前用户加入 dialout 组或使用 sudo 运行烧录工具。

sudo usermod -a -G dialout $USER
# 重启会话或重新登录后生效

4.6 验证与优化建议

  1. 验证入口:执行 adb reboot edl 后,3 秒内主机应弹出新端口。按键组合方式通常在插入 USB 后的 2~5 秒内完成枚举。
  2. 优化建议:
    • 使用 原装 USB 2.0 数据线,避免 3.0 或劣质线缆。
    • 若多次按键失效,拆机短接 DM/DP 测试点(参考主板丝印:EDL、9008、DLOAD)。
    • 生产环境中,建议通过工程线(D+短接)加载 firehose.elf 后进入 EDL,避免手动操作。
  3. 日志保留:记录每次进入 EDL 时设备的 VID/PID、枚举时长和主机日志,便于后续自动化和排查。
EDL 模式进入流程(三种方式) 开始:设备断电 按键组合触发 ADB 命令触发 保持按键 ≥ 5 s adb devices 确认连接 设备进入 EDL 短接测试点(备用) 主机识别 9008 端口 VID=05c6 PID=9008 验证通过,可进行烧录