【问题标题】:How does android bootloader know it has to boot from Slot B?android bootloader 如何知道它必须从 Slot B 启动?
【发布时间】:2019-12-04 11:04:15
【问题描述】:

OTA 更新成功后,AOSP 将目标 slot B 标记为 active。现在,当下一次启动发生时,设备从插槽 B 启动。现在我的问题是引导加载程序或 android 是如何知道它必须从该活动插槽启动的? 它是从任何 ro 属性还是从其他东西读取的?

【问题讨论】:

    标签: android-source android-kernel


    【解决方案1】:

    这是特定于制造商/供应商的,Android 未指定。供应商必须提供android.hardware.boot@1.0 HAL 的实现,他必须在其中决定如何实现来自update_enginesetActiveBootSlot 调用。

    bootloader(也由供应商提供)然后必须实现获取活动引导槽的方法。

    例如,供应商可以决定将当前活动的引导槽存储在/misc 分区中

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

    【讨论】:

    • 这个 ro.boot.slot_suffix 只能由内核 cmdline 参数修改。它的值由内核 cmdline 属性设置,即 androidboot.slot_suffix
    猜你喜欢
    • 2012-04-22
    • 2012-02-14
    • 2021-12-08
    • 2012-09-27
    • 2011-12-08
    • 1970-01-01
    • 1970-01-01
    • 2011-07-03
    • 1970-01-01
    相关资源
    最近更新 更多