Commit Graph

5512 Commits

Author SHA1 Message Date
Tao Bao 47be7bcdba Merge "Move a few modules to Soong."
am: d408a865af

Change-Id: I2f02b1ae3c4f3a2895fe49261072f2fd987cc370
2018-04-02 18:10:14 +00:00
Treehugger Robot d408a865af Merge "Move a few modules to Soong." 2018-04-02 16:05:37 +00:00
Jiachen Zhao c6152041fd Merge "Create folder for SystemUpdate sample app."
am: f0e2811092

Change-Id: Ia3b487a5e373cb4f92d07013a2bf161d4cdab5d0
2018-03-31 15:42:00 +00:00
Jiachen Zhao f0e2811092 Merge "Create folder for SystemUpdate sample app." 2018-03-31 15:28:18 +00:00
Jiachen Zhao 051b968d7b Create folder for SystemUpdate sample app.
Test: no functional changes.

Change-Id: I2e8c654086ca49063c59ae0529e190323c84d6ad
2018-03-30 18:22:36 -07:00
Tianjie Xu dea56f6531 Merge "Remove the obsolete mkfont.c and font_10x18.h"
am: 8b9faa0008

Change-Id: I4a12317a654effad6e9525982644ef84156bff28
2018-03-30 17:53:01 +00:00
Tianjie Xu 8b9faa0008 Merge "Remove the obsolete mkfont.c and font_10x18.h" 2018-03-30 17:38:37 +00:00
Tianjie Xu 55a2c4eaae Remove the obsolete mkfont.c and font_10x18.h
The font_10x18.h is used as a fall back for fonts if the
$(recovery_font) under bootable/recovery/fonts failed to reload. This
font looks very small on the screen and we haven't used it in a while.
Plus, fonts in header doesn't have many benefits if we support only
ascii characters. So we decide to remove this header along with the mkfont.c
that generates the header.

For reference, here's the steps to use mkfont:
1. Generate a picture of fonts with apps on host
2. Open the pic with GIMP
3. Export the pic as '.c' file, and rename it into '.h' file
4. Compile the generated '.h' file with mkfont.c

Bug: 76420958
Test: build and check the recovery menu on angler
Change-Id: I6c108aa43a07bf4994115ef764275bd84df725e1
2018-03-30 06:42:35 +00:00
Tao Bao 1da2937623 Merge "Specify a default module for TARGET_RECOVERY_UI_LIB."
am: 9010493189

Change-Id: Id44f823329e40a58416c2f02cc029295e66a2898
2018-03-27 04:40:33 +00:00
Tao Bao d2f2ad6a3c Move a few modules to Soong.
libmounts
librecovery_ui_default
librecovery_ui_wear
librecovery_ui_vr
libverifier
recovery-persist
recovery-refresh

They are all trivially converted.

Test: mmma -j bootable/recovery
Change-Id: Id783b3eec32bd15e74f42df17053732db5666675
2018-03-26 21:35:41 -07:00
Treehugger Robot 9010493189 Merge "Specify a default module for TARGET_RECOVERY_UI_LIB." 2018-03-27 04:28:44 +00:00
Tao Bao f6d25962bb Specify a default module for TARGET_RECOVERY_UI_LIB.
This aligns the logic between {default,wear,vr}_device.cpp. They all
implement their default make_device() functions, but using different
RecoveryUI variants.

This CL creates a new module librecovery_ui_default that uses
ScreenRecoveryUI, which serves as the default value for
TARGET_RECOVERY_UI_LIB.

Test: lunch aosp_{angler,marlin,dragon,walleye}-userdebug;
      `mmma -j bootable/recovery` respectively.
Change-Id: I6755b09d96e4809bb1c17142895fe1cad95e5a02
Merged-In: I6755b09d96e4809bb1c17142895fe1cad95e5a02
2018-03-26 19:45:06 -07:00
Tianjie Xu baf619c21c Merge "Factor out a menu class for screen ui"
am: 549695ae65

Change-Id: I926b85b2fecec7e7d21e30b5f21aa7996b641c7f
2018-03-24 17:06:47 +00:00
Tianjie Xu 549695ae65 Merge "Factor out a menu class for screen ui" 2018-03-24 16:53:26 +00:00
Tianjie Xu 5fe5eb67ef Factor out a menu class for screen ui
Also consolidate the duplicate codes to draw the menu in ScreenRecoveryUI
and WearRecoveryUI. This helps us to support text icons as menu in the
future.

Bug: 74397117
Test: Check the menu under recovery on bullhead and a wear device.
Change-Id: Iba9b646c3828670f0e78a7e07d1a94a44e96bb0b
Merged-In: Iba9b646c3828670f0e78a7e07d1a94a44e96bb0b
2018-03-23 23:57:29 -07:00
Tao Bao 7ce215d3b9 Merge "update_verifier: Support verifying product partition."
am: ab8d782bd4

Change-Id: Ic82da883b35d70cdd3f28e299fd2bc6fa4a4108a
2018-03-23 23:11:04 +00:00
Treehugger Robot ab8d782bd4 Merge "update_verifier: Support verifying product partition." 2018-03-23 22:53:55 +00:00
Tao Bao ec2e8c6c1e update_verifier: Support verifying product partition.
We have added the support for building /product partition in build
system (the CL in [1]), where /product is an optional partition that
contains system files. This CL adds the matching support if /product
needs to be verified during A/B OTA (i.e. listed in care_map file).

[1]: commit b7735d81054002961b681f4bdf296d4de2701135,
https://android-review.googlesource.com/c/platform/build/+/598454

Bug: 63974895
Test: Run update_verifier test on walleye.
Change-Id: Ia1c35e9583b8e66c98a4495b1f81a5ea7e65036f
2018-03-23 11:41:32 -07:00
Jaegeuk Kim a0e2a1aa8b Merge "f2fs: support f2fs by setting unmovable bit for package file"
am: 28dcad554c

Change-Id: I384f340e4828489861f1c71d5a78501088e83794
2018-03-22 21:56:50 +00:00
Jaegeuk Kim 28dcad554c Merge "f2fs: support f2fs by setting unmovable bit for package file" 2018-03-22 21:40:44 +00:00
Jaegeuk Kim b6e6ee7587 f2fs: support f2fs by setting unmovable bit for package file
This enables to use uncrypt for f2fs update-on-reboot.
It requires kernel patch named:
    "f2fs: add an ioctl to disable GC for specific file"

If any operation fails during uncrypt, please delete package file as soon as
possible, and create the file again to move forward. IOWs, don't leave the
package file for a long time.

Bug: 70309376
Bug: 30170612
Change-Id: I3b4233e7da756f107be35364521699deaf2e7139
Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
2018-03-22 12:10:08 -07:00
Tao Bao 40bfff9159 Merge "tests: Split ApplyPatchModesTest.PatchModeEmmcTarget."
am: e0b05ba553

Change-Id: I364efba52bcd866f0ab1970a67df6c828c01e0f6
2018-03-20 20:03:33 +00:00
Treehugger Robot e0b05ba553 Merge "tests: Split ApplyPatchModesTest.PatchModeEmmcTarget." 2018-03-20 19:56:04 +00:00
Tao Bao e3499f902e tests: Split ApplyPatchModesTest.PatchModeEmmcTarget.
We have been seeing flakiness in continuous test, but unable to
reproduce locally. Break it down into smaller units to narrow down the
cause.

Bug: 67849209
Test: Run recovery_component_test on marlin.
Change-Id: Ia24b0c5d137bad27d502575fcd18d3ca9c9828b6
2018-03-20 10:38:17 -07:00
Tao Bao 20d9c8ea5a Merge "tests: Add ApplyPatchModesTest.PatchModeEmmcTargetWithBsdiffPatch test."
am: 3537a2659e

Change-Id: I34a71d1a294bad5dd110be63a9d5a0cf746c8491
2018-03-13 16:02:47 +00:00
Treehugger Robot 3537a2659e Merge "tests: Add ApplyPatchModesTest.PatchModeEmmcTargetWithBsdiffPatch test." 2018-03-13 15:48:33 +00:00
Tao Bao d612b23dfd tests: Add ApplyPatchModesTest.PatchModeEmmcTargetWithBsdiffPatch test.
/system/bin/applypatch on device is expected to work with bsdiff based
recovery-from-boot patch automatically. Adding a test to ensure that's
always the case.

Bug: 72731506
Test: Run recovery_component_test on marlin.
Change-Id: I56283cd3ce7cf0215cc3bb3619b206fa01d552c4
2018-03-12 21:21:41 -07:00
Yifan Hong da5bb13507 Merge "recovery: add libhidl-gen-utils depedency"
am: fc39f3ffd7

Change-Id: I059487aa0a6e1d569bb59f088670082987dc1fb6
2018-03-12 21:07:58 +00:00
Yifan Hong fc39f3ffd7 Merge "recovery: add libhidl-gen-utils depedency" 2018-03-12 20:50:25 +00:00
Tianjie Xu 7120c687a5 Merge "Set the update locations to default in CacheLocation's constructor"
am: 0acbdac82b

Change-Id: I2303237cc57446624b265f8fedad285105292a64
2018-03-09 04:43:51 +00:00
Tianjie Xu 0acbdac82b Merge "Set the update locations to default in CacheLocation's constructor" 2018-03-09 04:17:30 +00:00
Tianjie Xu b4e3a370bf Set the update locations to default in CacheLocation's constructor
Otherwise the applypatch executable will fail to back up the source
file to /cache when patching the recovery image.

Bug: 74198354
Test: run applypatch from boot to recovery
Change-Id: I6e5b9cd06d6ed0b26066b779a348437ecf984b92
2018-03-08 14:24:02 -08:00
Yifan Hong 495c521ed3 recovery: add libhidl-gen-utils depedency
introduced as a depedency to libvintf.

Test: builds
Bug: 73556059
Change-Id: Ia51ba81ef462879481dcacb80d9ea9ea35e8b0bb
2018-03-07 18:35:15 -08:00
Tao Bao 9b0c133ff5 Merge "Export fuse_sideload.h for libfusesideload."
am: ddf93c0055

Change-Id: Iab8ed18018028ea936d48096751b007816fca08f
2018-03-07 22:17:43 +00:00
Treehugger Robot ddf93c0055 Merge "Export fuse_sideload.h for libfusesideload." 2018-03-07 22:05:54 +00:00
Tao Bao 2d62142fff Merge "Drop the no-op Android.bp."
am: 242d41b808

Change-Id: Id6c89984548aa261c4063f2cd1e90c2bc66f2074
2018-03-07 20:37:47 +00:00
Treehugger Robot 242d41b808 Merge "Drop the no-op Android.bp." 2018-03-07 20:17:06 +00:00
Tao Bao 734f76fc38 Merge "minadbd: Move to Soong."
am: 56160b2b03

Change-Id: I805ccc2c72bb1c391b4a72498283b911e826a547
2018-03-07 19:12:17 +00:00
Treehugger Robot 56160b2b03 Merge "minadbd: Move to Soong." 2018-03-07 18:56:50 +00:00
Tao Bao e8fdb1ab0b Drop the no-op Android.bp.
The "subdirs=" statement no longer has any effect (with the CL in [1]
that's merged last November). All the Android.bp's will be picked up
automatically.

[1] commit 4f21237342e715cbbac6e409cd67e86a304483c4 in
https://android-review.googlesource.com/c/platform/build/blueprint/+/530115.

Test: mmma -j bootable/recovery
Change-Id: Idd39af1fff907e8c1886f91eea0dd4a9e38a4079
2018-03-07 18:03:23 +00:00
Tao Bao 4b51c3ab40 Export fuse_sideload.h for libfusesideload.
Move the module into a separate directory so that we can export only the
expected header.

With this change, minadbd no longer needs to include bootable/recovery.

Test: mmma -j bootable/recovery
Change-Id: I69b888ceb160a33a67d79c5bda208dc17ad6ed86
2018-03-07 10:01:51 -08:00
Tao Bao 8c7761edec minadbd: Move to Soong.
Test: mmma -j bootable/recovery
Change-Id: Ic4cd676a842f0e8c4735cc6731fcbf13b844510c
2018-03-06 20:36:35 -08:00
Tianjie Xu a72f93d6da Merge "Add a singleton CacheLocation to replace the hard coded locations"
am: 47cd789eed

Change-Id: I11c265d3adebc338e0603ed00c7d1aaaffae0253
2018-03-01 18:45:52 +00:00
Tianjie Xu 47cd789eed Merge "Add a singleton CacheLocation to replace the hard coded locations" 2018-03-01 18:36:05 +00:00
Tianjie Xu 3bbb20f557 Add a singleton CacheLocation to replace the hard coded locations
This class allows us to set the following locations dynamically:
cache_temp_source, last_command_file, stash_directory_base.

In the updater's main function, we reset the values of these variables
to their default locations in /cache; while we can set them to temp
files in unit tests or host simulation.

Test: unit tests pass
Change-Id: I528652650caa41373617ab055d41b1f1a4ec0f87
2018-02-28 11:19:11 -08:00
Tianjie Xu 7b9a92c1e2 Merge "Fix the behavior of undefined commands in BlockImageVerify"
am: ac4818d6af

Change-Id: I5e42bcafca4c42e6c30cef082c03ad2b8d18ac6c
2018-02-28 18:59:33 +00:00
Tianjie Xu ac4818d6af Merge "Fix the behavior of undefined commands in BlockImageVerify" 2018-02-28 18:49:56 +00:00
Tianjie Xu c242084539 Fix the behavior of undefined commands in BlockImageVerify
In BlockImageVerify some commands are undefined, e.g. "erase", "new",
"zero". And we should not error out if the corresponding function
pointer of these commands is null; otherwise we will fail the
verification.

The old code is:
if (cmd->f != nullptr && cmd->f(params) == -1)
  return false;

In the last_command_file change the logic was wrongly modified to
if (cmd->f == nullptr)
  return false;
...
if (cmd->f(params) == -1)
  return false;

Test: sideload an incremental OTA twice on bullhead
Change-Id: I2561c365badb850da0e416629ccd61f0df7da5d7
2018-02-27 23:04:14 -08:00
Tianjie Xu a306d7bc55 Merge "Remove the assumption of target chunk size in imgdiff"
am: cc3446a7f7

Change-Id: Ic5d50e6c54dfd352950925d01448020669735056
2018-02-23 21:31:09 +00:00
Treehugger Robot cc3446a7f7 Merge "Remove the assumption of target chunk size in imgdiff" 2018-02-23 21:12:39 +00:00