А как вообще разрабатывают XBL?

У меня такой вопрос. Думаю, вы знаете тему с портированием UEFI на Qualcomm-ы. Но вот вопрос: а как тестируют эти, столь базовые, компоненты (aboot, xbl)? Ведь это не ядро и не recovery, которые всегда можно перешить хоть напрямую из fastboot. Что-то пойдёт не так - и будет hard brick. Нет, можно, конечно, выпаять в случае чего emmc флешку и работать с ней из Linux, но это дико непросто. Если я не ошибаюсь, EDL работает через Little Kernel, а оно вообще в aboot, даже не xbl. Просто, процесс загрузки же вроде бы так выглядит (не буду все расписывать):



[Power] -> [XBL UEFI] -> [aboot Little Kernel (fastboot)] -> [dm-verity/oem lock?] -> (Yes) -> [Verify boot/recovery] -> [Verified?] -> (Yes) -> [kernel+ramdisk execution] -> [dm-verity] -> [Enabled?] -> (Yes) -> [Check system partition] -> [Verified?] -> (Yes) -> [Start /init]
                                                                  |                                                            |                                                               |                                                 |
                                                                  V                                                            V                                                               V                                                 V
                                                                 (No)                                                         (No)                                                            (No)                                              (No)

Да, вне всякого сомнения, можно использовать UEFI-фишки XBL (по крайней мере, на snapdragon-ах), или вообще XBL как полноценный UEFI (привет, Snapdragon 820-845, и EFIDroid). Но XBL - проприетарный... Есть, конечно, qseecomd в ядре Linux, но оно вроде бы работы с TrustZone и rpmb. Так что реально непонятно, как разрабатывают и тестируют XBL UEFI. Тем более в том же QEMU не получиться эмулировать SoC, а других эмуляторов... я и не знаю (VirtualBox и VMWare по понятным причинам даже не рассматриваются).


Ответы (0 шт):