Commit Graph

9577 Commits

Author SHA1 Message Date
Tao Bao 082733b555 Merge "updater: Use a bool to indicate if allowed to skip a command."
am: 3a8b348936

Change-Id: I3b7fe231de183723be3f5dd158e3d130e3e797f2
2018-05-21 18:42:33 -07:00
Tao Bao 3a8b348936 Merge "updater: Use a bool to indicate if allowed to skip a command." 2018-05-22 01:34:03 +00:00
Jerry Zhang 118d6ac3a0 Merge "recovery: Add ability to set title lines" am: cba047f944 am: 6283f64568
am: ebc910901c

Change-Id: I51055a2ae70534c0107e6001d6db0e31f2a2932d
2018-05-21 17:14:56 -07:00
Tao Bao 67d0309460 Merge "updater: Clean up the header lines computation." am: a5735e9b5f am: 1e29bb6717
am: b8a04272c8

Change-Id: Ie044e694af47e2c115f1ba1030e331c99202611d
2018-05-21 17:09:11 -07:00
Jerry Zhang ebc910901c Merge "recovery: Add ability to set title lines" am: cba047f944
am: 6283f64568

Change-Id: I9c40c26a28de5d45b4651bd5cd5d36d57ff9d9fb
2018-05-21 17:05:28 -07:00
Tao Bao b8a04272c8 Merge "updater: Clean up the header lines computation." am: a5735e9b5f
am: 1e29bb6717

Change-Id: I48a43bb615d9850375774b6827bc34352b0b7c76
2018-05-21 17:05:04 -07:00
Jerry Zhang 6283f64568 Merge "recovery: Add ability to set title lines"
am: cba047f944

Change-Id: I6795eba1ab0cbc56e04fbed4d0ae3b8fe4925920
2018-05-21 17:00:23 -07:00
Tao Bao 1e29bb6717 Merge "updater: Clean up the header lines computation."
am: a5735e9b5f

Change-Id: Id8270c2dce8ac907ea443f667ede40f3eba8fa2d
2018-05-21 17:00:02 -07:00
Jerry Zhang cba047f944 Merge "recovery: Add ability to set title lines" 2018-05-21 23:52:43 +00:00
Tao Bao a5735e9b5f Merge "updater: Clean up the header lines computation." 2018-05-21 23:47:51 +00:00
Tao Bao 26ea9591bc ui: Use std::thread to create input/progress threads.
Test: Build and boot into recovery on walleye. Check the long press
      detection; `Run graphics test`.
Change-Id: Ic3e9b0652fc3ff6fb3ad118df5ebb9bb4abda2cd
2018-05-21 16:37:07 -07:00
Jerry Zhang 0e577ee424 recovery: Add ability to set title lines
Add the ability to change the contents of
the title lines, displayed at the top of
the screen. Once set, the same lines are
displayed for all menus until changed again.

Test: Recovery works
Bug: 78793464
Change-Id: I7ef5594b0d76dbbd2e01ad7508863af1270b2a2a
2018-05-21 16:37:07 -07:00
Tao Bao ba579eec7d [automerger skipped] Merge "Move stuff from recovery into librecovery." am: 901f0c3516 am: dd88112054 -s ours
am: f64feaac0f  -s ours

Change-Id: Iaf063b9ed0b485813ac77edb3d610c5b5392487b
2018-05-21 16:33:36 -07:00
Tao Bao f64feaac0f [automerger skipped] Merge "Move stuff from recovery into librecovery." am: 901f0c3516
am: dd88112054  -s ours

Change-Id: I59e680bbc6dd9a0895b594cd5a4a5f32719ec4b3
2018-05-21 16:24:29 -07:00
Tao Bao dd88112054 Merge "Move stuff from recovery into librecovery."
am: 901f0c3516

Change-Id: Ief503e9d2be627474df385790e5ac55399f08744
2018-05-21 16:21:09 -07:00
Tao Bao 901f0c3516 Merge "Move stuff from recovery into librecovery." 2018-05-21 23:05:45 +00:00
Tao Bao 08fa07c132 Merge "Move stuff from recovery into librecovery." into pi-dev-plus-aosp
am: adbf380258

Change-Id: I6ed490a28a7cdd1da3a1564fa9fb96bf2040a77c
2018-05-21 16:00:20 -07:00
Tao Bao adbf380258 Merge "Move stuff from recovery into librecovery." into pi-dev-plus-aosp 2018-05-21 22:24:06 +00:00
Tao Bao 26efb0ae3a updater: Use a bool to indicate if allowed to skip a command.
This avoids the signedness issue, and makes the code more readable.

Test: mmma bootable/recovery
Test: Run recovery_component_test.
Change-Id: I01c3a0357887cfd7c9d4aba4239ef650cfa18388
2018-05-21 15:05:53 -07:00
Tao Bao ab20706a84 updater: Clean up the header lines computation.
It no longer needs to be conditional, as we've removed the support for
BBOTA v1/v2.

Test: mmma bootable/recovery
Change-Id: I881de8afa38cc5b41b48e6d48d85170699ea5eb4
2018-05-21 14:48:49 -07:00
Zhomart Mukhamejanov 3d9a4ef57b Merge "updater_config: make utils/PayloadSpecs non-static" am: 928f2cbf9b am: 3714929c32
am: 154cdd99d6

Change-Id: If1786eba08d7746601b6870e16bce9141d504b57
2018-05-21 10:46:53 -07:00
Zhomart Mukhamejanov 154cdd99d6 Merge "updater_config: make utils/PayloadSpecs non-static" am: 928f2cbf9b
am: 3714929c32

Change-Id: I970eb576513cbc8f088e9edbdb4a229820b58cbf
2018-05-21 10:37:47 -07:00
Zhomart Mukhamejanov 3714929c32 Merge "updater_config: make utils/PayloadSpecs non-static"
am: 928f2cbf9b

Change-Id: Iec6299559d502989fadd08f6622aef9c320af478
2018-05-21 10:29:15 -07:00
Zhomart Mukhamejanov 928f2cbf9b Merge "updater_config: make utils/PayloadSpecs non-static" 2018-05-21 16:54:04 +00:00
Zhomart Mukhamejanov b0361ffa3e updater_config: make utils/PayloadSpecs non-static
PayloadSpecs has complicated methods, which makes hard
to test other dependent classes.
Making it non-static allows mocking it, which makes
testing other classes easier.

Test: manually
Test: using JUnit4
Change-Id: I818dc59c6bb0e7d131439d0d41f88d5cd9a451b4
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-18 10:38:33 -07:00
Jerry Zhang 76610d1681 Merge "recovery: Reset optind to 1 after getopt" am: 38d90316b2 am: 25d31c9f9c
am: 901fb2c811

Change-Id: I8848adc74153293256f780fefaa05c579eda359d
2018-05-17 14:52:48 -07:00
Jerry Zhang 901fb2c811 Merge "recovery: Reset optind to 1 after getopt" am: 38d90316b2
am: 25d31c9f9c

Change-Id: Id2d80584075c3482748e5946d39fe8ef572aea45
2018-05-17 14:48:15 -07:00
Jerry Zhang 25d31c9f9c Merge "recovery: Reset optind to 1 after getopt"
am: 38d90316b2

Change-Id: I06fecd4bc886741901715201b14ff31b6932d05d
2018-05-17 14:44:41 -07:00
Treehugger Robot 38d90316b2 Merge "recovery: Reset optind to 1 after getopt" 2018-05-17 21:38:26 +00:00
Tao Bao e462cdffe9 tools: Move to Soong.
Test: `mmma -j bootable/recovery/`
Test: Build and run RecoveryLocalizer on device.
Change-Id: I3359223c82bd670c94ad51296cb8b357b04f5349
2018-05-17 13:10:08 -07:00
Jerry Zhang 49fd5d262c recovery: Reset optind to 1 after getopt
The getopt library exposes optind which is the
next index to be processed. When scanning is
restarted, optind has to be reset to 1.

Test: Recovery works
Bug: 78793464
Change-Id: I1efca3fb985ffbdfe91e43767469733cda6e7d5b
2018-05-17 19:56:42 +00:00
Tao Bao f4ade1caa2 Merge "updater_sample: add switch slot demo" am: 2ddc54f5fd am: 4f26e44969
am: 6feecf0337

Change-Id: I411045c8260782c0612001e09831eef409d29099
2018-05-17 12:50:04 -07:00
Tao Bao 6feecf0337 Merge "updater_sample: add switch slot demo" am: 2ddc54f5fd
am: 4f26e44969

Change-Id: If5faa3401c43c321c5566ee049113d8dd152ed74
2018-05-17 12:44:55 -07:00
Tao Bao 4f26e44969 Merge "updater_sample: add switch slot demo"
am: 2ddc54f5fd

Change-Id: Ie29bdc24f011744e8d13ea0b5c5608d4d3851792
2018-05-17 12:39:53 -07:00
Tao Bao 2ddc54f5fd Merge "updater_sample: add switch slot demo" 2018-05-17 19:21:54 +00:00
Tao Bao 371fe6e8bc Move stuff from recovery into librecovery.
Move most source files into librecovery so they become testable. Only
recovery_main.cpp and logging.cpp are built into recovery module, as
they perform one-time setup (e.g. setting up logger).

Test: `mmma -j bootable/recovery` with
      aosp_{angler,bullhead,fugu,dragon,marlin}-userdebug
Test: recovery_host_test; recovery_unit_test; recovery_component_test;
      recovery_manual_test
Test: Build and boot into recovery image on angler.
Change-Id: Ic4444f87a2f123557c71085f81dc2b2764c05ed8
Merged-In: Ic4444f87a2f123557c71085f81dc2b2764c05ed8
2018-05-17 09:59:26 -07:00
Zhomart Mukhamejanov 238beb7373 updater_sample: add switch slot demo
- Add util/UpdateEngineProperties.java
- Set SWITCH_SLOT_ON_REBOOT=0 when update is applied
- Allow user to switch slot to the updated partition manually
- Add config "ab_config.force_switch_slot"
- Add ab_force_switch_slot to tools/gen_update_config.py

Test: manually on the marlin device
Bug: 79492522
Change-Id: I52f818b576d52a052b5427ba3f732cb2371ddb06
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-17 16:29:57 +00:00
Tao Bao fd0ace8f6e Move stuff from recovery into librecovery.
Move most source files into librecovery so they become testable. Only
recovery_main.cpp and logging.cpp are built into recovery module, as
they perform one-time setup (e.g. setting up logger).

Test: `mmma -j bootable/recovery` with
      aosp_{angler,bullhead,fugu,dragon,marlin}-userdebug
Test: recovery_host_test; recovery_unit_test; recovery_component_test;
      recovery_manual_test
Test: Build and boot into recovery image on angler.
Change-Id: Ic4444f87a2f123557c71085f81dc2b2764c05ed8
(cherry picked from commit bf4c006d7bc8a4517c82399bbffd9cb09971c0b4)
2018-05-16 22:31:41 -07:00
Tao Bao 7f41584d9d [automerger skipped] Merge "recovery: Refactor common setup into main()" am: 5b3d6cf58b am: 0abc18d520 -s ours
am: 41e47d6d0a  -s ours

Change-Id: Ifecfe86247c683366ede6a2d9e91b2c51990a1de
2018-05-16 17:29:22 -07:00
Tao Bao 41e47d6d0a [automerger skipped] Merge "recovery: Refactor common setup into main()" am: 5b3d6cf58b
am: 0abc18d520  -s ours

Change-Id: I6e90e6810feefaa7b6b028259591e5cced2b5c3f
2018-05-16 17:03:35 -07:00
Tao Bao 0abc18d520 Merge "recovery: Refactor common setup into main()"
am: 5b3d6cf58b

Change-Id: I33558285e87b03af06d02f735e7e06e89404f9ad
2018-05-16 16:59:37 -07:00
Tao Bao 5b3d6cf58b Merge "recovery: Refactor common setup into main()" 2018-05-16 23:46:01 +00:00
Tianjie Xu cd4122f122 Merge "Last command file should be updated after a command finishes" am: 6dfc54cae1 am: 45b7dbea74
am: 567570954e

Change-Id: Icdfa75122de982cd599dbfc1b27f3320ffef2fc8
2018-05-16 16:13:50 -07:00
Tianjie Xu 567570954e Merge "Last command file should be updated after a command finishes" am: 6dfc54cae1
am: 45b7dbea74

Change-Id: Ic9da282f5b09e36b0b64c56f595b25ebc6cf60c6
2018-05-16 16:05:19 -07:00
Tianjie Xu 45b7dbea74 Merge "Last command file should be updated after a command finishes"
am: 6dfc54cae1

Change-Id: I0a99acaf18a1b3f386aa79bea210eb3a04929e54
2018-05-16 16:00:46 -07:00
Tianjie Xu 6dfc54cae1 Merge "Last command file should be updated after a command finishes" 2018-05-16 22:55:39 +00:00
Jerry Zhang 4c4357848b Merge "recovery: Refactor common setup into main()" into pi-dev-plus-aosp
am: 726c9271db

Change-Id: I8500833326fb5f4b64e8d9df721ff4335b407b09
2018-05-16 12:39:21 -07:00
Jerry Zhang f5e319ac96 recovery: Refactor common setup into main()
Move more common setup into the main function.
Main() handles all 1 time setup, such as ui,
logging, and secontext. Recovery_main()
takes in command line arguments, does any
necessary recovery work, and can be called
multiple times from main().

Test: Recovery works
Bug: 78793464
Change-Id: I2d2595fc342b4ddfa80f4e06b30e44263132acd9
Merged-In: I2d2595fc342b4ddfa80f4e06b30e44263132acd9
2018-05-16 19:32:06 +00:00
Jerry Zhang 726c9271db Merge "recovery: Refactor common setup into main()" into pi-dev-plus-aosp 2018-05-16 19:18:53 +00:00
Tao Bao 2aa8516102 Merge "wear_ui: Address a TODO regarding {intro,loop}_frames." am: 0f3aa6ec38 am: b730743b40
am: 6171da90c5

Change-Id: I53abe3ff30d8d60389a429c837c230758af54d50
2018-05-15 21:20:23 -07:00