8295平台刷机流程-EDL

准备材料

  1. 安装 9008 驱动材料:Windows安装usb驱动教程
    • Linux 系统一般情况下无需关注 9008 驱动
  2. 下载刷机鉴权工具:小米汽车PC刷机鉴权工具 - 使用说明
  3. 研发人员白名单申请:小米汽车PC刷机鉴权工具 - 账号&权限申请说明

确认样件是否 eFuse(熔丝)

  1. android 属性:ro.boot.secboot 为 1 表示开启熔丝
  2. SOC 串口上电第一秒会有打印,secure boot: on 表示开启了熔丝
  • 熔丝样件只能刷写正式签名的 ROM
    1. 设备白名单导入申请:小米汽车PC刷机鉴权工具 - 账号&权限申请说明
    2. 量产卖给用户的车,不应该出现线刷操作;一旦出现线刷操作,说明为用户退件,且该样件永远不会出现在用户手中
    3. 如需操作 MCU 则同样需要将 MCU 的 SN 号加入到设备白名单中

EDL 刷机原理

如需了解 EDL 刷机原理,请参考手机部文档:EDL刷机原理及协议

EDL 模式进入方式

  1. 按住金手指上电,默认关闭 MCU 的心跳
    1. 如果刷机一半突然中断,则未能关闭心跳,请按金手指上电,并保持长按 10 秒以上再刷机
    2. 若还不能关闭心跳,请重刷 MCU
  2. 非熔丝设备、底包为 debug 版的 ROM 还可以尝试(已弃用,建议直接走金手指方案):
    • 在 QNX 关闭心跳检测:echo 'x7523:json:{"data":[5,117,35,5,0,254,3,1,0]}' >> /tmp/pps/spi_service/tx
    • 通过 QNX 进入 EDL 模式:reset -e
    • reset -e 失效时:reset -ffastboot erase xblfastboot erase xbl_bkupfastboot reboot

EDL 刷机

  1. 端口自动选择
  2. 刷机包目录选到 watt_images 下,能同时看到 /ufs0/ufs1 两个文件夹
  3. UFS Provision 可以理解为先对整个 UFS 做一次格式化,会丢失所有持久化分区的数据,极其不建议勾选
  4. 勾选研发设备刷机,可以在线刷之后解锁 QNX(未熔丝设备默认解锁,请勿勾选)

附录

如何使用串口?

  1. 准备串口线(方式 1 或方式 2):
    1. 黑色的一拖二的线刷插入 USB-C 口,小头为 SOC 的 USB 接口,大头是 SOC 的串行接口
    2. 金手指上方凹槽,连接线为 SOC 的串行接口。下方凹槽为 MCU 的串行接口。
    3. 8295 平台 SOC 串行接口连接为 QNX 系统。熔丝的设备需要解锁才能使用 QNX 串口
  2. 软件设置:
    • 波特率 115200
    • 硬件流控制:NO、None
    • Linux 系统 minicom 设置,串口设备节点为 /dev/ttyUSB0
    • Windows 系统 mobaXterm 软件设置。串口设备节点为 COMx(不断变化,后面有 serial 字样)
  3. 软件均为开源软件,使用方式请自行百度

刷机时已经关闭了心跳,还是会重启?

  1. 长按金手指上电,12 秒之后再松开
  2. 如果还在心跳休眠,请重刷 debug 的 MCU