Commit Graph

6501 Commits

Author SHA1 Message Date
Tianjie Xu 5c1b333bde Merge "Further compress the recovery animation file"
am: c8e0292b61

Change-Id: I3776285237eb48cb72619117b7a9414b34eee0e0
2018-08-15 16:43:00 -07:00
Tianjie Xu c8e0292b61 Merge "Further compress the recovery animation file" 2018-08-15 22:30:55 +00:00
Tianjie Xu e45f359e9c Further compress the recovery animation file
The res/images/loop.*png can be further compressed with "pngquant
--quality 0-10"; and the difference is not noticeable to humans
under recovery. And This reduces the animation pictures under res-xxxhdpi
from 2.7M to 1.2M.

Note that the *_text.png files can't be compressed this way because they
requires lossless compression to keep the embedded locales intact.

Bug: 112494634
Test: Run recovery graphic tests.
Change-Id: I2cefaea8e037cb09cb4e4735d1b86e82da9e6875
2018-08-15 19:07:08 +00:00
Tao Bao 6956957499 Merge "tests: Move to Android.bp."
am: b1ff1bc43b

Change-Id: I3d964a6f4d60b031209a02625b2fdee5d2c75a6b
2018-08-15 11:04:59 -07:00
Tao Bao b1ff1bc43b Merge "tests: Move to Android.bp." 2018-08-15 17:56:19 +00:00
Tao Bao 07c78fe446 Merge "Track the change to update_engine_sideload path."
am: 97de9c3d3e

Change-Id: I7b16e7b90ad473581216dda7f991245d7a71525d
2018-08-14 22:25:44 -07:00
Tao Bao ef5e38fef0 tests: Move to Android.bp.
Also separate libupdater_defaults out to be shareable.

It turns out the `data` property in `cc_test` doesn't follow symlinks as
LOCAL_TEST_DATA does in Android.mk. This CL creates a filegroup in
top-level Android.bp in order to pick up the testdata for ResourcesTest.

Test: `mmma -j bootable/recovery` with aosp_marlin-userdebug
Test: Run recovery_{unit,component,manual}_test on marlin.
Test: Run recovery_host_test.
Change-Id: I4532ab25aeb83c0b0baa8051d5fe34ba7b910a35
2018-08-14 21:46:45 -07:00
Tao Bao 97de9c3d3e Merge "Track the change to update_engine_sideload path." 2018-08-15 01:46:31 +00:00
Hridya Valsaraju b0851cf8c4 Merge "Add fastboot mode to recovery"
am: 19a5316412

Change-Id: I115017c90c8ee4a7b28a2742462d157585b1edaa
2018-08-14 15:55:00 -07:00
Yifan Hong c7c56f0e90 Merge "recovery uses IHealth::getService"
am: ce2f0d85fb

Change-Id: Ic22bf13545f1261f288dc47df9ee123913ad8028
2018-08-14 15:51:08 -07:00
Treehugger Robot 19a5316412 Merge "Add fastboot mode to recovery" 2018-08-14 21:25:50 +00:00
Yifan Hong ce2f0d85fb Merge "recovery uses IHealth::getService" 2018-08-14 21:06:58 +00:00
Tao Bao 2cc9bbb1ec Track the change to update_engine_sideload path.
Bug: 112494634
Test: Build and boot into recovery image on taimen. Verify that
      `Apply updates from ADB` keeps working.
Test: Run recovery_component_test on marlin.

Change-Id: I9ee8834053fda79a4fd77bfa83eab3cc51a90dff
2018-08-14 12:34:46 -07:00
Tao Bao d1386d8385 Merge "updater: Move libupdater to Soong."
am: c205dd9d43

Change-Id: I00ba7327c02eaae9e1d9262dc6b4ea03179e1e9f
2018-08-14 10:02:27 -07:00
Tao Bao 3eceebf7eb Merge "recovery: Drop the dependency on libcrypto_utils.so and libsparse.so."
am: 19d002d33f

Change-Id: Ied2c8510c24e8e1d698beefbc36a84bea26aa5aa
2018-08-14 10:01:43 -07:00
Tianjie Xu 9b64295f3e Merge "Add the hash_tree_info class in Command"
am: c0195801dc

Change-Id: I32500b2045271d498d3a67b85e5ec0a51ac8da0c
2018-08-14 09:48:57 -07:00
Tao Bao c205dd9d43 Merge "updater: Move libupdater to Soong." 2018-08-14 16:43:15 +00:00
Tao Bao 19d002d33f Merge "recovery: Drop the dependency on libcrypto_utils.so and libsparse.so." 2018-08-14 16:42:37 +00:00
Tianjie Xu c0195801dc Merge "Add the hash_tree_info class in Command" 2018-08-14 16:33:10 +00:00
Tao Bao b0f132e244 recovery: Drop the dependency on libcrypto_utils.so and libsparse.so.
They're only needed in past when we statically linked libs that had
dependencies on them. Dropping them doesn't affect the recovery image
size, as there're still other users of the libs. But this would avoid
the false dependencies on them.

Test: `mmma -j bootable/recovery`
Change-Id: Ib43cc42221edde9efea1f12357cfc2f2232ec520
2018-08-13 23:02:17 -07:00
Hridya Valsaraju 20c81b308d Add fastboot mode to recovery
Add a fastboot mode to recovery that can be
entered with command line args or with the ui.

Add usb property triggers to switch between
fastboot and adb configurations.

Allow switching between fastboot and adb through
usb commands by opening a unix socket. adbd/fastbootd
writes to this socket, which interrupts the ui and
switches to the new mode.

Test: Use fastboot mode
Bug: 78793464
Change-Id: I7891bb84427ec734a21a872036629b95ab3fb13c
2018-08-13 21:18:18 -07:00
Tianjie Xu 8f64bf635f Add the hash_tree_info class in Command
Add hash_tree_info to represent the hash tree computation arguments in
the transfer commands 'compute_hash_tree'. Also add its parsing code in
the Command class.

Bug: 25170618
Test: unit tests pass
Change-Id: Ie8607968377968e8fb3e58d1af0b8ca315e145be
2018-08-13 17:27:30 -07:00
Yifan Hong 056538c0a9 recovery uses IHealth::getService
recovery is_battery_ok function uses get_health_service(),
which calls IHealth::getService("default") then
IHealth::getService("backup").

- An OEM can provide the default instance by installing
  android.hardware.health@2.0-impl-<device>.so to recovery
  partition.

- If that's not found, the "backup" instance is provided
  to the recovery partition by default.

Test: call is_battery_ok() in recovery, successfully
  get battery information.

Bug: 80132328

Change-Id: Ibfee80636325a07bc20b24d044d007a60b3dd7c2
2018-08-13 16:16:18 -07:00
Tao Bao 7785eec4f2 Merge "Reland "Build and use minadbd as a shared library.""
am: 337bd80b78

Change-Id: Iae00627d92cc7761afe1d99005287284793bbaa8
2018-08-13 16:07:18 -07:00
Tao Bao 337bd80b78 Merge "Reland "Build and use minadbd as a shared library."" 2018-08-13 22:52:56 +00:00
Colin Cross a681afc358 Merge "Remove TODO for b/112462307"
am: 1914bd0f4b

Change-Id: I2debb7e2402a48a291cc20a9714370b17bcf9392
2018-08-13 14:11:23 -07:00
Tao Bao 7d2a63afe1 Reland "Build and use minadbd as a shared library."
This relands the previously reverted CL in commit
c70446ce7b ("Build and use minadbd as a
shared library."). `recovery` has been built with Soong, so the previous
concern (unintentionally installing `libminadbd_services.so` to normal
system image) no longer holds.

Note that `reocvery` can't use `libminadbd_services.a`, as functions
like `daemon_service_to_fd()` (needed by `libadbd.so`) won't be linked
into `recovery`.

This CL moves the dependency of `libminadbd_services` from `librecovery`
into `recovery`, as only the latter actually relies on it (via
`recovery_main.cpp`). Note that we no longer need to list the transitive
dependency on `libadbd` or `libasyncio`.

Bug: 112494634
Test: `mmma -j bootable/recovery`
Test: Build and boot into recovery with aosp_taimen-userdebug. Verify that
      sideloading keeps working.
Test: `build/soong/build_test.bash --dist`
Change-Id: Ic086470b86d6770bede317e0f5534f608fa7b7d2
2018-08-13 14:09:58 -07:00
Colin Cross 1914bd0f4b Merge "Remove TODO for b/112462307" 2018-08-13 21:02:58 +00:00
Colin Cross f27ca7eff6 Remove TODO for b/112462307
b/112462307 is fixed now, remove the TODO.

Bug: 112462307
Test: dexlist out/soong/.intermediates/bootable/recovery/updater_sample/SystemUpdaterSample/android_common/dex/classes.dex | grep getUpdaterState
Change-Id: I19cb93a74b714967e4bab2964e229a0ab0a15676
2018-08-13 12:38:28 -07:00
Tao Bao 673bb6f051 updater: Move libupdater to Soong.
Test: mmma -j bootable/recovery
Test: Run recovery_unit_test and recovery_component_test on marlin.
Change-Id: I2617b87d13c585addf0ed2fbae8c3ce443ea7200
2018-08-13 09:44:48 -07:00
Tao Bao 287ce6ebea Merge "Build recovery with Soong." am: df264e0186
am: 24b16491db

Change-Id: I5708d582aa745e398a165e589ad3df192d1b6c84
2018-08-13 09:36:21 -07:00
Tao Bao 24b16491db Merge "Build recovery with Soong."
am: df264e0186

Change-Id: Ibb7075be2286f4df99667ef1ace22a58b9bec7df
2018-08-13 09:32:31 -07:00
Tao Bao df264e0186 Merge "Build recovery with Soong." 2018-08-13 16:25:48 +00:00
Tao Bao 9c2145d297 Merge "tests: Create res-testdata for testdata pickup." am: 2cc6211165
am: e5734c014f

Change-Id: Ia13c3f4b0940f2089f747d6cf23cc691889f0b25
2018-08-13 08:47:11 -07:00
Tao Bao e5734c014f Merge "tests: Create res-testdata for testdata pickup."
am: 2cc6211165

Change-Id: Ife7e354f91f07f715e012a37d65fe264c4d0e44d
2018-08-13 08:43:17 -07:00
Tao Bao 2cc6211165 Merge "tests: Create res-testdata for testdata pickup." 2018-08-13 15:35:09 +00:00
Tao Bao 13f9816e14 tests: Create res-testdata for testdata pickup.
It doesn't change the functionality of the test, but allows easier
conversion to Soong.

Test: Run recovery_component_test on marlin.
Change-Id: Ic7419dc86c6b220531ae44e49ab4657394a5d7fa
2018-08-12 21:57:08 -07:00
Hridya Valsaraju 1303267b32 Merge "Build boot control HAL with Android.bp" am: bbe881693a
am: b5e9049476

Change-Id: I8bed367854e978cabb970dd77801158954e12cc3
2018-08-10 17:26:35 -07:00
Hridya Valsaraju b5e9049476 Merge "Build boot control HAL with Android.bp"
am: bbe881693a

Change-Id: Idbd45cd24b99ae92f1dd50b4e6011c87d62d9419
2018-08-10 17:08:19 -07:00
Treehugger Robot bbe881693a Merge "Build boot control HAL with Android.bp" 2018-08-10 22:48:19 +00:00
Tao Bao 5fc72a103b Build recovery with Soong.
Fixes: 110380063
Test: `mmma -j bootable/recovery` with aosp_taimen-userdebug
Test: Build and boot into recovery on taimen. Check the basic
      functionalities (`Apply update from ADB`, `View recovery logs`,
      `Run graphics test`).
Test: Run recovery_unit_test and recovery_component_test on marlin.
Test: Modify `recovery.cpp` locally to trigger the call to
      is_battery_ok(). Check that the battery info is reported
      correctly.
Test: `build/soong/build_test.bash --dist`
Change-Id: I391eb201d57c760e457ba2bf2410ceb72596795c
2018-08-10 14:43:27 -07:00
Tao Bao ab3a4688b1 Merge "updater_sample: Move to Soong." am: afa16480aa
am: e98bdd979c

Change-Id: I10ba70e73bea53fa9a7d9408be5f02da7a85d488
2018-08-10 12:36:04 -07:00
Tao Bao 14acf82585 Merge "recovery uses more shared libraries." am: 3c5e2c1c7e
am: f8f53fd04c

Change-Id: Ibf374ac95558eecf13e7aeca8f86b4f285e806e0
2018-08-10 12:35:46 -07:00
Tao Bao e98bdd979c Merge "updater_sample: Move to Soong."
am: afa16480aa

Change-Id: Id8ba9ceacf6c449114759a9b0c92e78ab718a129
2018-08-10 12:07:44 -07:00
Tao Bao f8f53fd04c Merge "recovery uses more shared libraries."
am: 3c5e2c1c7e

Change-Id: If4070036031ba754c2686ff6dc6d52f7cebd4044
2018-08-10 12:07:26 -07:00
Tao Bao afa16480aa Merge "updater_sample: Move to Soong." 2018-08-10 18:10:31 +00:00
Tao Bao 3c5e2c1c7e Merge "recovery uses more shared libraries." 2018-08-10 18:10:16 +00:00
Tao Bao d2be7fc29a updater_sample: Move to Soong.
Test: Follow the steps in "Running tests" in updater_sample/README.md.
Change-Id: I70c3239e3daea0dcdadf02f68abe7d6aafa67a2e
2018-08-10 09:05:56 -07:00
Hridya Valsaraju c53dad20d0 Build boot control HAL with Android.bp
Bug: 78793464
Test: make
Change-Id: Id5efceda0f5e93bbaf33c2dc3e203fd39ef44e28
2018-08-09 22:15:01 -07:00
Tao Bao 818f938188 recovery uses more shared libraries.
Bug: 110380063
Test: `m -j installclean && mmma -j bootable/recovery` with
      aosp_taimen-userdebug
Test: Build (`m -j bootimage`) and boot into recovery. Check that
      `adb sideload` and `Run graphics test` both work.
Test: Run recovery_unit_test and recovery_component_test on marlin.
Change-Id: Ie6ed0e7cafa352d5faff9d1b6ccef724a0415e65
2018-08-08 14:26:27 -07:00