Commit Graph

7956 Commits

Author SHA1 Message Date
Tianjie Xu
9387e5cd61 Merge "Remove common.h" am: 899f7b5105
am: 03fd851f61

Change-Id: I810c6fb8a57b9ce3283d15f10d29cb0848a200c5
2019-08-15 18:59:51 -07:00
Tianjie Xu
03fd851f61 Merge "Remove common.h"
am: 899f7b5105

Change-Id: Ic5b9e24cb87ef292f5d8e53de485e44e455f3185
2019-08-15 18:05:25 -07:00
Tianjie Xu
899f7b5105 Merge "Remove common.h" 2019-08-16 00:24:41 +00:00
Tao Bao
9c9d845ae5 Merge "minui: Support input device hotplug in recovery mode." am: ecc208286f
am: f934163f4c

Change-Id: I485d8d39465c0f8d224e5e13fc50964ffca2e890
2019-08-15 16:23:31 -07:00
Tao Bao
f934163f4c Merge "minui: Support input device hotplug in recovery mode."
am: ecc208286f

Change-Id: Ic20b0a1459e3b77413ec6b5869b184272a559284
2019-08-15 16:13:31 -07:00
Tao Bao
ecc208286f Merge "minui: Support input device hotplug in recovery mode." 2019-08-15 22:43:30 +00:00
Tianjie Xu
b63a2215b5 Remove common.h
Additionally kill the global variable: reason, stage; move them to a
separate BootState class instead. Vendor specific recovery code will
need to call getters from Device() class to access these variables.

Bug: 137705917
Test: unit tests pass, boot sailfish into recovery, code search and no
code includes common.h in vendor specific recovery.
Change-Id: Ia50a5ea951212c25548562f29cc9cf78505b5e34
2019-08-15 13:40:16 -07:00
Xihua Chen
a7952ac141 minui: Support input device hotplug in recovery mode.
In the old code, the recovery only enumerated the input devices at the
startup, and read the input events from these devices.
So if a USB input device is probed after the recovery startup, then the
recovery can't read the events from this device.
This patch use inotify to monitor /dev/input for new added input
device, then support input device hotplug in recovery mode.

Bug: 111847510
Test: can use USB keyboard hotplugged in recovery mode
Change-Id: I7e7dcbd619d3c66a2f40a43418f5dac6a50c859e
Signed-off-by: Liu Shuo A <shuo.a.liu@intel.com>
Signed-off-by: Ming Tan <ming.tan@intel.com>
2019-08-14 14:18:58 -07:00
Xin Li
2e3532fa96 [automerger skipped] DO NOT MERGE - Skip qt-dev-plus-aosp-without-vendor (5713463) in stage-aosp-master
am: 1ba485fbde -s ours
am skip reason: subject contains skip directive

Change-Id: I5048c3ee10b89fc2b94ad9b89a1c17d4a705b786
2019-08-14 13:17:52 -07:00
Xin Li
1ba485fbde DO NOT MERGE - Skip qt-dev-plus-aosp-without-vendor (5713463) in stage-aosp-master
Bug: 134405016
Change-Id: I98da75f9e4ab07527759b5cc372e14e1f79f2498
2019-08-14 11:35:07 -07:00
Vic Yang
8946524a79 Merge "bootloader_message: Remove global std::string" am: 7b87949ae1
am: 76d80ba102

Change-Id: I5d8cdd458d17129656424e8e09ca52578a5f6c53
2019-08-07 18:56:48 -07:00
Vic Yang
76d80ba102 Merge "bootloader_message: Remove global std::string"
am: 7b87949ae1

Change-Id: I9a374505c325b041876bc7d659d5b211a6d50ca3
2019-08-07 18:47:47 -07:00
Treehugger Robot
7b87949ae1 Merge "bootloader_message: Remove global std::string" 2019-08-08 01:24:29 +00:00
Vic Yang
e94b64ae86 bootloader_message: Remove global std::string
A global std::string, even if not used, pollutes the bss section
unnecessarily.  Since this object is only there for testing, make it
std::optional<std::string>, which is constexpr constructible.

Bug: 138856262
Test: Along with a fix in fs_mgr, see that the bss section for
      libbootloader_message.so is now clean on cuttlefish for several
      processes.

Change-Id: I6df837dded88d979ffe14d5b2770b120bcf87341
2019-08-07 14:12:36 -07:00
Tianjie Xu
112acdc043 Merge "Simulator: add the argument to keep the updated images" am: c34e4e7fb5
am: be3f56543e

Change-Id: Icec27b83fa9dc557fe47c1646867ce453d38c76b
2019-07-31 16:33:59 -07:00
Tianjie Xu
be3f56543e Merge "Simulator: add the argument to keep the updated images"
am: c34e4e7fb5

Change-Id: Idb86f6ee1b5a99c626150acaa86d8152b2a8ba99
2019-07-31 16:16:56 -07:00
Tianjie Xu
c34e4e7fb5 Merge "Simulator: add the argument to keep the updated images" 2019-07-31 22:34:34 +00:00
Tianjie Xu
60b242cfd5 Simulator: add the argument to keep the updated images
Add the command line option to select the work directory and save the
updated image files. Because some people might have interested in
getting updated images from an ota file.

Also, fix a minor issue that the destination of package_extract_file
needs to be updated if it's a block device. Otherwise, an unintended
file may be extracted in the callers' directory.

Test: run simulation, run unit tests

Change-Id: Ic6a7db0580bc1748d6e080102e4654da4e41fd8c
2019-07-30 17:11:35 -07:00
Tianjie Xu
c234be1655 Merge "Create a new function to return the help message for menu" am: 5d9f963e4e
am: b25d741563

Change-Id: I3391b38b54596fa08001c39214ebcc98e87285cc
2019-07-26 11:22:24 -07:00
Tianjie Xu
b25d741563 Merge "Create a new function to return the help message for menu"
am: 5d9f963e4e

Change-Id: I216097c1aea8ae73999ad9b880dd6898a3c94def
2019-07-26 11:13:22 -07:00
Tianjie Xu
5d9f963e4e Merge "Create a new function to return the help message for menu" 2019-07-26 17:39:20 +00:00
Tianjie Xu
e5032219fe Create a new function to return the help message for menu
Then we can override this function in the device specific recovery ui;
and allow customizing the help message.

Bug: 137965958
Test: Check the menu on sailfish
Change-Id: I09f23166f4205c5edf6c62eb42c8ada0fa710b26
2019-07-25 13:22:03 -07:00
Tianjie Xu
6f8e0ede72 Merge "Clean up some global variables in common.h" am: 80c405f692
am: 168ce56022

Change-Id: I7bc150fa572bc9709263feefcd12f786f4393d15
2019-07-24 17:37:03 -07:00
Tianjie Xu
168ce56022 Merge "Clean up some global variables in common.h"
am: 80c405f692

Change-Id: Id50b466efaed118a6e7d1bac71c95000822be855
2019-07-24 17:26:53 -07:00
Tianjie Xu
80c405f692 Merge "Clean up some global variables in common.h" 2019-07-24 22:45:32 +00:00
Tianjie Xu
164c60a4f3 Clean up some global variables in common.h
Some global variables are only used for recovery.cpp and
recovery_main.cpp, remove them from common.h and handle their usage
accordingly. Variables include:
static constexpr int kRecoveryApiVersion;
extern struct selabel_handle* sehandle;
extern RecoveryUI* ui;
extern bool has_cache;
bool is_ro_debuggable();

Test: unit tests pass, boot into recovery mode and run graphic tests
Change-Id: If83a005786c9b38412731da97aaf85af69a3b917
2019-07-24 11:36:03 -07:00
Tianjie Xu
7aa310c3f5 Merge "Add command line parser for simulator" am: 7965a95adc
am: 94bc9e1010

Change-Id: I563cd91537d42c20660a3f04907fea06a8c1fcb7
2019-07-17 10:59:41 -07:00
Tianjie Xu
94bc9e1010 Merge "Add command line parser for simulator"
am: 7965a95adc

Change-Id: Ifa759b9f07a671ad509b0847c30bda4c17edac6c
2019-07-17 10:44:25 -07:00
Tianjie Xu
7965a95adc Merge "Add command line parser for simulator" 2019-07-17 17:19:51 +00:00
Tao Bao
e64e670fab [automerger skipped] minadbd sends heartbeat to rescue service for getprop command.
am: dd0158ac60 -s ours
am skip reason: change_id Ib9d5ed710cfa94ecfe6cf393a71a0b67b2539531 with SHA1 2223e6a9f8 is in history

Change-Id: I672a987e18b370b2a21d3f39e088b57079a40dab
2019-07-16 18:46:29 -07:00
Tianjie Xu
7efd23338a Add command line parser for simulator
Add a command line parser. Also add the support to parse the oem
property file and skip certain functions.

Bug: 131911365
Test: run simulator for wear builds
Change-Id: Ide306b53d3f42b29c02279969aeb18bec4045d6f
2019-07-16 13:03:41 -07:00
Tao Bao
dd0158ac60 minadbd sends heartbeat to rescue service for getprop command.
We start minadbd and rescue services in two processes. In particular,
minadbd handles the requests from host, then communicates with rescue
service to do install/wipe works. When resuce service doesn't see any
request in a pre-defined timeout (currently 300s), rescue service will
exit to avoid endless waiting.

This CL changes minadbd to additionally send a no-op command to rescue
service as a heartbeat signal, so that host side can finish
time-consuming operations (e.g. downloading over network) while keeping
rescue service alive.

Bug: 136457446
Test: Enter resuce mode on blueline. Send `adb rescue getprop
      ro.build.fingerprint` and check that rescue service doesn't exit.
Test: Stop sending the getprop command. Check that rescue service exits
      after 300s.
Change-Id: Ib9d5ed710cfa94ecfe6cf393a71a0b67b2539531
Merged-In: Ib9d5ed710cfa94ecfe6cf393a71a0b67b2539531
(cherry picked from commit 2223e6a9f8)
(cherry picked from commit 0bbb2ed53e)
2019-07-16 15:28:03 +00:00
Tianjie Xu
fd4d891c22 Merge "Drop the device specific support for update host simulator" am: fc2ad88770
am: 79e4e39be6

Change-Id: I89f8934d463532b498216b636ab1d03463d5692a
2019-07-14 16:23:05 -07:00
Tianjie Xu
79e4e39be6 Merge "Drop the device specific support for update host simulator"
am: fc2ad88770

Change-Id: I2d0b32a139ac02952e1c365849b2036d74fad1bf
2019-07-14 16:13:05 -07:00
Tianjie Xu
fc2ad88770 Merge "Drop the device specific support for update host simulator" 2019-07-14 22:49:59 +00:00
David Anderson
e203476c67 Merge "Fix build for API change to DestroyLogicalPartition()." am: 4c8e6eae28
am: d3d51e5066

Change-Id: I92db6e376ef7f4ff5979e31b830b6d17a6886c03
2019-07-13 11:26:04 -07:00
David Anderson
d3d51e5066 Merge "Fix build for API change to DestroyLogicalPartition()."
am: 4c8e6eae28

Change-Id: Ifdc9b9560114d89c53ba99e5dc360769e157cdab
2019-07-13 11:18:02 -07:00
David Anderson
4c8e6eae28 Merge "Fix build for API change to DestroyLogicalPartition()." 2019-07-13 18:02:05 +00:00
Tianjie Xu
b42281a423 Drop the device specific support for update host simulator
The device specific libs prevent us from building an universal simulator to add
to the otatools. Drop the support since there is currently no active users of the
simulator extension; plus we will unlikely to implement the device specific simulator
runtime.

As a alternation, we will add the commandline arguments to skip certain unsupported
functions, and move the simulator build to the bp file.

Bug: 131911365
Test: mma
Change-Id: I3ff0f45dbebe3ed72d5f4670a869b40e6cfd5a7c
2019-07-12 11:55:59 -07:00
Tianjie Xu
be4712aabd Merge "Remove libimgpatch" am: ed96da6664
am: 36385bd9ee

Change-Id: I8ed0f92329550c4b643e8f52ad8471bce1e79769
2019-07-10 18:26:47 -07:00
Tianjie Xu
36385bd9ee Merge "Remove libimgpatch"
am: ed96da6664

Change-Id: Id263dad2ce56b5268af5e65ee8d1cc55d2967e56
2019-07-10 18:04:27 -07:00
Treehugger Robot
ed96da6664 Merge "Remove libimgpatch" 2019-07-11 00:38:02 +00:00
Tao Bao
bf57406110 Merge "minadbd sends heartbeat to rescue service for getprop command." am: 89cc79cbb6
am: d9ec0bbd06

Change-Id: Iddc44d7ae5eda8686713871046a713207e86f91b
2019-07-10 14:09:58 -07:00
Tianjie Xu
f9a2f996bf Merge "Add a new key_pressed_mutex" am: 33bb113af2
am: e99f4e88a2

Change-Id: I595e163e0cfc5c0247abe2eebc95dce32e154a63
2019-07-10 14:09:42 -07:00
Tianjie Xu
f6e8941ee9 Merge "Create a fallback to install from fuse if mmap fails" am: 5f408dd48a
am: 0c666e3d5d

Change-Id: Ifc0bdb1fedc35dd16138706b4112bac21843b4ea
2019-07-10 13:59:32 -07:00
Tao Bao
d9ec0bbd06 Merge "minadbd sends heartbeat to rescue service for getprop command."
am: 89cc79cbb6

Change-Id: Ia150b81bbb224db0fd6293d6a95bcc788e62cc49
2019-07-10 13:49:01 -07:00
Tianjie Xu
e99f4e88a2 Merge "Add a new key_pressed_mutex"
am: 33bb113af2

Change-Id: Ic9de2f770616aade4de13061b38540ed480f73f6
2019-07-10 13:48:44 -07:00
Tianjie Xu
0c666e3d5d Merge "Create a fallback to install from fuse if mmap fails"
am: 5f408dd48a

Change-Id: Ie8a54863426bb3558600b96c2ef7338eb0171cd3
2019-07-10 13:41:30 -07:00
Tao Bao
89cc79cbb6 Merge "minadbd sends heartbeat to rescue service for getprop command." 2019-07-10 19:52:44 +00:00
Tianjie Xu
45c40ec876 Remove libimgpatch
Stop building libimgpatch as it's merely a subset of libapplypatch.

Test: unit tests pass

Change-Id: I0735ec053344404434a50e53a36e3f55964c2e4f
2019-07-10 12:41:45 -07:00