Как загрузчик Android узнает, что он должен загружаться из слота B?

После успешного обновления OTA AOSP отмечает целевой слот B как активный. Теперь, когда происходит следующая загрузка, устройство загружается из слота B. Теперь мой вопрос: как загрузчик или Android узнают, что он должен загружаться из этого активного слота? Читается ли он из какого-либо ресурса ro или из чего-то еще?


person swetabh suman    schedule 26.07.2019    source источник


Ответы (1)


Это зависит от производителя / поставщика и не указывается в Android. Поставщик должен предоставить реализацию [email protected] HAL, в которой он должен решить, как реализовать вызов setActiveBootSlot, исходящий от update_engine.

Затем bootloader (также предоставляемый поставщиком) должен реализовать средства для получения активного загрузочного слота.

Например, поставщик может решить сохранить текущий активный загрузочный слот в разделе /misc.

См. https://source.android.com/devices/tech/ota/ab/ab_implement.html

person Simpl    schedule 26.07.2019
comment
Этот ro.boot.slot_suffix может быть изменен только аргументом ядра cmdline. И его значение устанавливается свойством cmdline ядра, то есть androidboot.slot_suffix - person swetabh suman; 29.07.2019