xChar
·2 years ago

2022年4月我的8pro以同样的方式黑砖了,我终于知道是什么原因造成的!

答案 - 引导程序!

一加使用相同的签名对所有四个固件进行签名,OP8,OP8T,OP8Pro,9R都使用相同的签名,这意味着无论你刷哪个,它们的PBL(Primary Bootloader)将加载XBL(Secondary Bootloader).

虽然OxygenOS OTA基本上是安全的,但它仍然可能会意外导致OxygenOS刷新错误的图像或TWRP告诉有效负载将DDR4引导加载程序刷新到DDR5设备上。
之前的OnePlus 8和8 Pro固件都附带了为DDR4或DDR5设计的单个引导加载程序。但从OxygenOS12开始,他们开始在同一个包中运送 DDR4和DDR5。而手机死机的原因是因为LPDDR5与LPDDR4X相比,LPDDR5 RAM使用较低的电压,并且仅仅因为没有代码可以防止XBL在LPDDR5上将电压设置得太高,导致RAM没有加载正确的电压而无法正常工作,所以手机无法正常启动。

所以如果我们通过 fastboot 手动刷入 OOS OTA,我们应该请检查是否是正确的XBL,防止事发生

:::warn{title="来自 mlgmxyysd 一些额外的警告"}

  1. 一加 8T/9R 也有 LPDDR4x 版本,刷机前请使用下方adb确认版本。
    adb shell getprop ro.boot.ddr_type
    0=LPDDR4|1=LPDDR52. DDR检测进程被人为杀死,远离Magisk模块以保证安全。
  2. 不推荐TWRP,改用OxygenOS修改恢复或其他ROM的恢复。
  3. Flash/Root风险巨大,所有操作需谨慎。

:::

机型RAM
OnePlus 8LPDDR4
OnePlus 8 ProLPDDR5
OnePlus 8TLPDDR4x/LPDDR5
OnePlus 9RLPDDR4x/LPDDR5

如果你是OnePlus 8(DDR4)你应该刷 xbl.img 和 xbl_config.img
如果你是OnePlus 8 Pro/8T/9R(DDR5) 你应该刷 xbl_lp5.img 和 xbl_config_lp5.img
我建议每个制作 fastboot flashers 的人都包含该更改或为每个代号制作单独的 flashers!

之前LP5只有9R固件,但一加加入OPPO后似乎发生了一些变化,让很多人觉得很危险。

image

image

上面的图片有一些检查,但它们似乎没有在正常的工作,而且电压设置得太高了。

所以,请停止向 8 Pro 固件版本刷入非 DDR5 引导​​加载程序!或者至少在检测到 DDR5 时添加保护以防止启动失败。

如何补救

刷入了错误的XBL,手机一般表现为一块电子砖头(无法开机、进入fastboot、9008,关机充电也没有亮屏充电动画反应)

:::note{title="@Jpnx49Db0 描述"}
我来解释一下为什么会刷死,要换主板。lddr4x和lddr5的电压不一样,刷错xbl_config会导致电压过高或过低,使得RAM无法正常工作,导致手机死机。而进入9008的按键检测代码在xbl中,手机死机,无法响应按键操作,所以进入不了9008。那些号称可以免拆进9008修复这种黑砖机的原理应该是插入了工程线,里面接了特定阻值的电阻,在启动流程的PBL阶段(上电后第一个执行的程序)就进入了9008模式,直接无视xbl。之前售后换主板应该是不清楚有工程线可用,遇到这种问题直接换主板,现在的售后应该有工程线了,可以救砖了。具体什么是xbl,pbl可以看看我的图文浅谈底层固件安全性,里面有许多干货[受虐滑稽]
:::

我们可以购买一根带有特定电阻的工程线连接到你的手机,利用这根线进行正常的9008刷写操作即可救回你的手机

当然,如果你的地区不贩卖明确带有电阻的线,也可以使用类似pcb2.0功能的线来进行刷写,里面一般带有很多种类的电阻,一般长这样

希望此帖子能帮助到同样发生这个问题的人

文章参考:
XDA(GUIDE How to Avoid Killing Your OnePlus 8 Pro/8T/9R with OxygenOS 12 / ColorOS 12)
酷安 @Jpnx49Db0 相关图文
GUIDE How to Avoid Killing Your OnePlus 8 Pro / 8T / 9R with OxygenOS 12 / ColorOS 12

Loading comments...