Commit Graph

3176 Commits

Author SHA1 Message Date
Sen Jiang 2c467f6e49 Merge "Use bspatch from external/bsdiff."
am: f9962dbfe2

Change-Id: I21e6de951b22673fe48ff8f7db418e22d233ee58
2017-02-16 21:18:42 +00:00
Sen Jiang f9962dbfe2 Merge "Use bspatch from external/bsdiff." 2017-02-16 21:14:10 +00:00
Tao Bao c42d44bbeb Merge "recovery: Clean up browse_directory()."
am: 635eb1c83e

Change-Id: Idf8a4e33a1f7cfd5d5c648aa97e00219828fc58d
2017-02-14 02:03:11 +00:00
Tao Bao 635eb1c83e Merge "recovery: Clean up browse_directory()." 2017-02-14 01:56:24 +00:00
Tao Bao 6585a3c368 Merge "minui: Move graphics_{adf,drm,fbdev} into classes."
am: 0d14cc279c

Change-Id: I75c426732188a868f0acb160284a45a19d0b9b1e
2017-02-13 18:29:46 +00:00
Tao Bao 0d14cc279c Merge "minui: Move graphics_{adf,drm,fbdev} into classes." 2017-02-13 18:25:06 +00:00
Tao Bao c4a18efa84 recovery: Clean up browse_directory().
Get rid of the malloc/realloc/free'd menus.

browse_directory() will only be called on devices with SD card. Tested
the CL by temporarily setting SDCARD_ROOT to a different location.

Test: See above.
Change-Id: I935e1bf4bad0273e3dff87fa2536924f1219adb5
2017-02-10 21:21:52 -08:00
Tao Bao 557fa1f45e minui: Move graphics_{adf,drm,fbdev} into classes.
This CL defines minui_backend as an interface, and expresses the three
backends (adf, drm and fbdev) as subclasses to the interface.

Test: 'Run graphics test' on N9, Pixel C and N5X.
Change-Id: I0e23951c7b2e2ff918957a8d9fc8b0085b6e5952
2017-02-10 17:05:15 -08:00
Tao Bao 8075089ca1 Merge "minui: Save errno before calling close()."
am: df464dbe79

Change-Id: I58e4df9b09b8c6e1470a815180df73d908b98d0a
2017-02-09 23:36:09 +00:00
Treehugger Robot df464dbe79 Merge "minui: Save errno before calling close()." 2017-02-09 23:17:59 +00:00
Tao Bao f04592ba23 minui: Save errno before calling close().
Otherwise errno would be overwritten when calling close(2).

Test: mmma bootable/recovery
Change-Id: I661e46b1b040f550639a728aa2683e91621b4307
2017-02-09 12:59:19 -08:00
Tao Bao e91a2d23ca Merge "minui: Clean up graphics_fbdev.cpp."
am: 5121961421

Change-Id: If16c6e23b6eb8854660c5c461fc5283e5e5bd4e5
2017-02-09 20:36:49 +00:00
Treehugger Robot 5121961421 Merge "minui: Clean up graphics_fbdev.cpp." 2017-02-09 20:31:02 +00:00
Tao Bao 46829c326e Merge "minui: Clean up graphics_adf.cpp."
am: d592e1d5e1

Change-Id: Ia530771c7e5443b15ffacfcd439549617c3bd6fb
2017-02-09 20:12:17 +00:00
Tao Bao d592e1d5e1 Merge "minui: Clean up graphics_adf.cpp." 2017-02-09 20:07:09 +00:00
Tao Bao f6b6b75916 Merge "minui: Clean up graphics_drm.cpp."
am: 648f252c71

Change-Id: I30f5536b2a0686424da0dc31ba9da787768a00d4
2017-02-09 19:49:15 +00:00
Treehugger Robot 648f252c71 Merge "minui: Clean up graphics_drm.cpp." 2017-02-09 19:43:20 +00:00
Tao Bao 76be34cb34 minui: Clean up graphics_drm.cpp.
Remove unneeded header includes. Switch a few memset() to '= {}'
style. Otherwise mostly cosmetic changes like reformatting.

Test: 'Run graphics test' on ryu (which is a DRM device).

Change-Id: I4b0ab2dc0da69a690f09e4f0674b8377de662962
2017-02-07 14:47:59 -08:00
Tao Bao acf4dd157a minui: Clean up graphics_fbdev.cpp.
Remove unneeded header includes. Otherwise mostly cosmetic changes like
reformatting.

Test: 'Run graphics test' on bullhead (which uses fbdev).

Change-Id: I9b92c96128fa332ac940f73764f9c5fc93ff6c8c
2017-02-07 14:46:31 -08:00
Tao Bao 8f0e21b271 minui: Clean up graphics_adf.cpp.
Remove unneeded header includes. Switch a few memset() to '= {}' style.
Otherwise mostly cosmetic changes like reformatting.

Test: 'Run graphics test' on N9 (which is an ADF device).

Change-Id: If008af18ddae9521f53216b581d882d5eed76d41
2017-02-07 13:20:55 -08:00
Tao Bao 80176c68b2 Merge "Replace _exit(-1) with _exit(EXIT_FAILURE)."
am: 95bcbfdd4e

Change-Id: Icbf6b4d02cc8d60c66f7ed8ebf9d7798a2d518c3
2017-02-03 23:45:58 +00:00
Treehugger Robot 95bcbfdd4e Merge "Replace _exit(-1) with _exit(EXIT_FAILURE)." 2017-02-03 23:40:06 +00:00
Tianjie Xu 5fa2e576f9 Merge "Avoid to call UI functions in child process"
am: 0f275ae56e

Change-Id: Ia1a735d6ca5c966e6e84c5fe67456c3b5142632e
2017-02-03 22:12:19 +00:00
Tao Bao 3da880156b Replace _exit(-1) with _exit(EXIT_FAILURE).
-1 is not a valid exit status.

Also replace a few exit(1) with exit(EXIT_FAILURE).

Test: mmma bootable/recovery
Change-Id: I4596c8328b770bf95acccc06a4401bd5cabd4bfd
2017-02-03 14:11:11 -08:00
Treehugger Robot 0f275ae56e Merge "Avoid to call UI functions in child process" 2017-02-03 22:06:50 +00:00
Tianjie Xu d40cd0e7cf Merge "update_verifier should read dm wrapped partition"
am: c44c479197

Change-Id: I3ce467a3d634f2a566f87a936a86e7b55627c6cd
2017-02-03 21:57:21 +00:00
Tianjie Xu c44c479197 Merge "update_verifier should read dm wrapped partition" 2017-02-03 21:50:07 +00:00
Tao Bao ec8d74580d Merge "minui: Minor clean up to graphics.cpp."
am: b04bc0540d

Change-Id: Ie1ebc638e9a013d69f0195b567a8a16aa3aaf79c
2017-02-03 20:51:14 +00:00
Tao Bao b04bc0540d Merge "minui: Minor clean up to graphics.cpp." 2017-02-03 20:48:47 +00:00
Tianjie Xu ab1abae59c Avoid to call UI functions in child process
ui_print uses a mutex to protect the critical section. And a forked
child process may intialize the mutex inappropriatly, which leads to a
hanging child process. So we shall avoid to call the UI functions in
child process.

Bug: 34769056
Test: fake ota on fugu failed as expected due to updater format mismatch.
Change-Id: I81bc942a796878fac19cf712512092c2b0d807c9
2017-02-03 20:35:40 +00:00
Tao Bao e8020f4fa3 minui: Minor clean up to graphics.cpp.
Remove unneeded header includes.

Remove the dead code in gr_test() (already commented out). Similar tests
have been covered by the "Run graphics test" from recovery menu.

Test: mmma -j32 bootable/recovery
Change-Id: If977c1b780602f5c5054469a3dae4fd85f34ab1a
2017-02-03 09:33:36 -08:00
Sen Jiang 25c56979dd Use bspatch from external/bsdiff.
Now ApplyBSDiffPatch() will stream the output to sink as we go instead
of sinking everything at the end.

Test: recovery_host_test
Bug: 26982501

Change-Id: I05b6ed40d45e4b1b19ae72784cf705b731b976e3
2017-02-02 14:41:05 -08:00
Tao Bao c33d037d7d Merge "Fix a log issue in ui.cpp."
am: 7f38fbf976

Change-Id: I84dcdabf341eb566ee7591259c405ac7d406ebf0
2017-02-01 16:42:58 +00:00
Tao Bao 7f38fbf976 Merge "Fix a log issue in ui.cpp." 2017-02-01 16:39:13 +00:00
Tao Bao 8eec37330b Fix a log issue in ui.cpp.
It's a copy/paste error when addressing reviewer's comment for commit
6278bdf349.

Test: recovery gives the right message (e.g. "Permission denied") when
      it fails to read max_brightness.

Change-Id: I10372c82595bdc00a6f6725f036c02721b19a1aa
2017-01-31 21:27:27 -08:00
Tao Bao 29ef12f777 Merge "bootable/recovery: cleanup compiler warnings (potential leak of memory)"
am: 7ab9c3812d

Change-Id: I779a671ef4756fb149dc1bd5823eb85f0e846269
2017-02-01 05:15:50 +00:00
Tao Bao 7ab9c3812d Merge "bootable/recovery: cleanup compiler warnings (potential leak of memory)" 2017-02-01 05:10:15 +00:00
Tao Bao 2684259c34 Merge "recovery: Add screensaver mode."
am: 389a29193c

Change-Id: Ia3a03dce52f6e6c0aa907643aa67ad725fea8005
2017-01-31 06:15:53 +00:00
Tao Bao 389a29193c Merge "recovery: Add screensaver mode." 2017-01-31 06:11:37 +00:00
Tao Bao 6278bdf349 recovery: Add screensaver mode.
While it's waiting for user input, dim or turn off the backlight to
avoid OLED burn-in. The backlight brightness will be reduced after the
first timeout (default 120s), and then turned off after the second.
Pressing any key will take it back to the normal brightness. While the
display is off, the first key input will only turn on the backlight.

The most common case that triggers the screensaver is under text mode,
such as waiting for menu selection or viewing recovery logs.

This CL doesn't change the brightness while it's installing updates or
performing wipes under UI mode.

When it encounters any install error under UI mode (user builds):
 - If it's NOT USB connected, it will reboot automatically after the
   first timeout (same as before);
 - If it's USB connected, it will dim and turn off the display per the
   change in this CL.

Bug: 34077703
Test: Boot a device with the new recovery image. Wait for timeout.

Change-Id: I0c14907e60340a7f037adb6e464942d099ada08b
2017-01-30 16:12:30 -08:00
Tianjie Xu b0ac872014 update_verifier should read dm wrapped partition
update_verifier used to read from system_block_device, which bypasses
dm-verity check completely. Switch update_verifier to read the corresponding
'/dev/block/dm-X' instead. U_v gets the verity block device number by
comparing the contents in '/sys/block/dm-X/dm/name'.

Bug: 34391662
Test: update_verifier detects the corrupped blocks and dm-verity trigger the reboot on Sailfish.
Change-Id: Ie5c50c23410bd29fcc6e733ba29cf892e9a07460
2017-01-26 11:08:03 -08:00
Alex Deymo 5b5b8333e0 Merge "Remove '_static' suffix from libext2* references."
am: 56ff8061b1

Change-Id: Icadc8fe11a75ce85771e0ba6383e0ea7b1cceb10
2017-01-25 23:53:06 +00:00
Alex Deymo 56ff8061b1 Merge "Remove '_static' suffix from libext2* references." 2017-01-25 23:48:43 +00:00
Connor O'Brien a78bbda4e2 Merge "Use flash erase & logical block size for userdata wipe"
am: c8f7b5bad7

Change-Id: Ie9ad2ca457ecb6bf68a57120bcc504faaabc0871
2017-01-25 04:16:19 +00:00
Treehugger Robot c8f7b5bad7 Merge "Use flash erase & logical block size for userdata wipe" 2017-01-25 04:14:00 +00:00
Connor O'Brien 98a658bb54 Use flash erase & logical block size for userdata wipe
If flash erase and logical block size are available, then pass them
to libext4_utils when rebuilding userdata.

Test: Factory reset marlin in recovery, confirmed params passed correctly
Bug: 33243520
Change-Id: I6bed976a73e7a64a80eaac50f48fbacb6d812517
Signed-off-by: Connor O'Brien <connoro@google.com>
2017-01-24 18:04:02 -08:00
Tao Bao 343987b2a1 Merge "minui: Move callback functions to std::function."
am: a476312714

Change-Id: I31bcb78f9f145fb97df82b6065d0e026c57c1d56
2017-01-25 00:53:33 +00:00
Tao Bao a476312714 Merge "minui: Move callback functions to std::function." 2017-01-25 00:49:48 +00:00
Tao Bao 8e01ded271 Merge "update_verifier: Move property_get() to android::base::GetProperty()."
am: 42906e06b3

Change-Id: I3acda7030997b014801f691f2d8c87a82664938f
2017-01-24 23:41:51 +00:00
Tao Bao 42906e06b3 Merge "update_verifier: Move property_get() to android::base::GetProperty()." 2017-01-24 23:37:22 +00:00