1. 27 Mar, 2017 2 commits
  2. 25 Mar, 2017 1 commit
    • Bowgo Tsai's avatar
      libbootloader_message: use different fstab paths for normal/recovery boot · 37bd4417
      Bowgo Tsai authored
      libbootloader_message is used by both normal boot and recovery boot.
      It needs to use different fstab paths, respectively. Otherwise, factory
      reset will fail when we move /fstab.{ro.hardware} to /vendor/etc/.
      
        Recovery boot: fs_mgr_read_fstab_with_dt("/etc/recovery.fstab")
        Normal boot: fs_mgr_read_fstab_default()
      
      Bug: 35811655
      Bug: 36502022
      
      Test: normal boot sailfish, go to Settings > System & tap on
            "Factory Data reset"
      Test: recovery boot sailfish
      
      Change-Id: I253f5bdfb9be8a01f80856eb1194f85cdf992bbd
      37bd4417
  3. 10 Mar, 2017 1 commit
    • Bowgo Tsai's avatar
      recovery: replacing fs_mgr_read_fstab() with new fs_mgr APIs · d13b6cf2
      Bowgo Tsai authored
      The fstab settings of early-mounted partitions (e.g., /vendor) will be in
      kernel device tree. Switch to the new API to get the whole settings with
      those in device tree:
      
          fs_mgr_read_fstab_with_dt("/etc/recovery.fstab")
      
      The original default /fstab.{ro.hardware} might be moved to
      /vendor/etc/. or /odm/etc/. Use another new API to get the default fstab
      instead of using the hard-coded /fstab.{ro.hardware}. This API also
      includes the settings from device tree:
      
          fs_mgr_read_fstab_default()
      
      Bug: 35811655
      Test: boot sailfish recovery
      Change-Id: Iaa56ac7f7b4c4dfc7180c65f03e9a37b94f1de09
      d13b6cf2
  4. 16 Feb, 2017 1 commit
    • Matt Mower's avatar
      Fix bldr msg file open mode when offset specified · 6244806a
      Matt Mower authored
      It was pointed out to me by gmrt that O_APPEND is incorrect, as lseek
      before writing would be undone (perhaps we avoided this issue due to
      an inability to write beyond the end of a partition) and O_RDWR is not
      necessary to lseek. When AOSP switched from fopen to open, they also
      removed the full partition wipe (fopen in wb mode) before each write,
      so this is no longer an issue. Completely restore the original AOSP
      file access mode flags.
      
      Change-Id: I42b4efc5f499360ce5b761d3a2a5d4dac4cdfb65
      6244806a
  5. 02 Feb, 2017 1 commit
    • Matt Mower's avatar
      Allow custom bootloader msg offset in block misc · 8df3191b
      Matt Mower authored
      Globally define BOARD_RECOVERY_BLDRMSG_OFFSET with a decimal integer
      to offset the read/write location in misc where the bootloader message
      should appear. Example:
      
        BOARD_GLOBAL_CFLAGS := -DBOARD_RECOVERY_BLDRMSG_OFFSET=2048
      
      Edify commands get_stage and set_stage need to be aware of the
      custom bootloader msg offset because they write the stage directly
      to the BCB.
      
      Change-Id: Ifdb5ffe3e893a651be59ae63e3a0ebadd828c9f2
      8df3191b
  6. 18 Jan, 2017 1 commit
  7. 11 Jan, 2017 1 commit
    • nailyk-fr's avatar
      bootloader_message: Allow TWRP to ignore wipe-data command into misc · 1021edf1
      nailyk-fr authored
       * Rebase of https://gerrit.omnirom.org/#/c/20750/ patch-set 3
       * Original commit message:
      
      fix: recently a change in AOSP causes a bootloop to TWRP
      (and therefore all ROM's based on it)
      Reason: AOSP enables use of /misc partition and normally the fstab in
      TWRP will not have /misc added. The problem is now when Android writes
      a wipe command to /misc it will force TWRP to boot but TWRP will do
      nothing - leaving the cmd in /misc. This results in a bootloop to TWRP.
      Solution: I added a new var TW_IGNORE_MISC_WIPE_DATA which can be
      set to "true" in Boardconfig.mk of a device requiring this which then
      ignores /misc commands like it would be when /misc would be just not in
      fstab BUT with this change TWRP clears the bit in /misc so a normal boot
      can happen.
      Besides that if the device do not have an own recovery key combo and
      /misc is enabled we want to open TWRP after walking through the factory
      reset screen - without actually doing a factory reset.
      kudos to nailyk (and DevUt) for the help with the C++ code!
      
      Change-Id: If6fed5872015f1a66304e3edbdb787c507236f69
      1021edf1
  8. 15 Dec, 2016 1 commit
    • Tao Bao's avatar
      Add update_bootloader_message() to fix two-step OTAs. · 2292db81
      Tao Bao authored
      This is a retry of commit 7e31f421.
      
      Commit bd56f159 switches to calling
      write_bootloader_message(<options>) in get_args(), which
      unintentionally resets the stage field thus breaks two-step OTAs.
      
      This CL adds update_bootloader_message(<options>), which only sets
      the command field (to "boot-recovery") and the recovery field (with
      the specified options).
      
      Bug: 33534933
      Test: Apply a two-step package.
      Test: recovery_component_test passes.
      Change-Id: Ie0b1ed4053d2d3c97d9cb84310d616b28fcfc72e
      2292db81
  9. 14 Dec, 2016 1 commit
  10. 13 Dec, 2016 2 commits
  11. 05 Dec, 2016 1 commit
    • Tao Bao's avatar
      write_bootloader_message(<options>) should not reset stage field. · 7e31f421
      Tao Bao authored
      Commit bd56f159 switches to calling
      write_bootloader_message(<options>) in get_args(), which
      unintentionally resets the stage field thus breaks two-step OTAs.
      
      This CL changes write_bootloader_message(<options>) to only set the
      command field (to "boot-recovery") and the recovery field (with the
      specified options).
      
      Test: Apply a two-step package.
      Change-Id: I6905918812c7d3402cc1524688079066a4d22d29
      7e31f421
  12. 19 Nov, 2016 1 commit
  13. 18 Nov, 2016 1 commit
    • Tao Bao's avatar
      updater: Refactor set_stage() and get_stage() functions. · bedf5fc1
      Tao Bao authored
      Add read_bootloader_message_from() and write_bootloader_message_to() to
      allow specifying the BCB device (/misc).
      
      Also add testcases for set_stage() and get_stage().
      
      Test: recovery_component_test passes.
      Test: Build a recovery image and apply a two-step OTA package.
      Change-Id: If5ab06a1aaaea168d2a9e5dd63c07c0a3190e4ae
      bedf5fc1
  14. 10 Nov, 2016 1 commit
  15. 18 Oct, 2016 2 commits
    • Yabin Cui's avatar
      Fix bootloader_message. · 0d5b8594
      Yabin Cui authored
      Bug: 29945717
      Change-Id: I934fd6c52b0111937fa75455de2fa4157fb30f6f
      (cherry picked from commit 9da04d59)
      0d5b8594
    • Yabin Cui's avatar
      Create bootloader_message static library. · 8b309f69
      Yabin Cui authored
      bootloader_messages merges bootloader_message_writer
      and bootloader.cpp, so we can use the same library to
      manage bootloader_message in normal boot and recovery mode.
      
      Bug: 29582118
      
      Change-Id: I9efdf776ef8f02b53911ff43a518e035e0c29618
      (cherry picked from commit 2f272c05)
      8b309f69
  16. 30 Sep, 2016 1 commit
    • Tianjie Xu's avatar
      Turn on -Werror for recovery · 17e316cc
      Tianjie Xu authored
      Also remove the 0xff comparison when validating the bootloader
      message fields. As the fields won't be erased to 0xff after we
      remove the MTD support.
      
      Bug: 28202046
      Test: The recovery folder compiles for aosp_x86-eng
      Change-Id: Ibb30ea1b2b28676fb08c7e92a1e5f7b6ef3247ab
      (cherry picked from commit 7aa88748)
      17e316cc
  17. 24 Sep, 2016 1 commit
  18. 06 Jul, 2016 1 commit
  19. 30 Jun, 2016 1 commit
    • Yabin Cui's avatar
      Create bootloader_message static library. · 2f272c05
      Yabin Cui authored
      bootloader_messages merges bootloader_message_writer
      and bootloader.cpp, so we can use the same library to
      manage bootloader_message in normal boot and recovery mode.
      
      Bug: 29582118
      
      Change-Id: I9efdf776ef8f02b53911ff43a518e035e0c29618
      2f272c05