If recovery sits for 2 minutes in prompt_and_wait(), and you've never
turned the screen on via the magic keypress, go ahead and reboot. (We
used to assume that the user could pull the battery to get out of this
state, but on devices with nonremovable batteries...)
If you've ever enabled display of the log/menu since recovery started,
we assume you know what you're doing and will stay in recovery until
you choose to reboot.
Bug: 3387873
Bug: 3387274
Change-Id: I041621e5db132df9a925e6808845a7c45e1b427a
When formatting /data, if it's an ext4 filesystem, reserve the
last 16 Kbytes for the crypto footer.
Change-Id: I7b401d851ee87732e5da5860df0287a1c331c5b7
Add "RECOVERY_24_BIT := true" to the device's BoardConfig.mk to use
24-bit framebuffers in the recovery ui.
Change-Id: Iaede138bf7870becf237f12f1c0e49c9ff82d007
ECC errors are found by comparing the result of ioctl(ECCGETSTATS)
before and after the read. But if an error was found causing us to go
to the next block, we'd compare the stats before the *first* read to
the stats after the second (third, fourth, etc.) reads, so we'd read
to the end of the partition without ever succeeding. Fix logic so we
compare the values before and after each read independently.
Bug: 3162777
Change-Id: I5a13abd7243d2afd1d21bd98cbb233e5124b2e80
Make ui_init() clear the framebuffer memory it maps in so the user
isn't treated to a visible flash of random bits on recovery startup.
Call ui_set_background() (to show the installing icon) right after
ui_init() to display something while device_recovery_start() is
working (which can take a second or two on some devices).
Bug: 3145331
Change-Id: I11e7859fab5847370ea4f4932c3fb1558af26c5d
Merge commit '2d87023e77b20aa2196c8ceae833b33040b0dc57'
* commit '2d87023e77b20aa2196c8ceae833b33040b0dc57':
save the log from recovery's last run in /cache/recovery/last_log
Merge commit '2c3539e4d8251ad91e0b881253d39583680093e8' into gingerbread-plus-aosp
* commit '2c3539e4d8251ad91e0b881253d39583680093e8':
save the log from recovery's last run in /cache/recovery/last_log
Merge commit 'af78591c9a2aa8379c2d8528c31ea1eb813f6cae'
* commit 'af78591c9a2aa8379c2d8528c31ea1eb813f6cae':
mount sdcard only on demand; fix sideload installs
Merge commit '2c3c5c15d15faf1c9fa074851c57d0afa2a40d28' into gingerbread-plus-aosp
* commit '2c3c5c15d15faf1c9fa074851c57d0afa2a40d28':
mount sdcard only on demand; fix sideload installs
Merge commit '8147ba850b2e74dc950183e67c77a0da2b1a19b7'
* commit '8147ba850b2e74dc950183e67c77a0da2b1a19b7':
use fs_type "emmc" instead of "block" for consistency (do not merge)
Merge commit '93ca4fc6943a3ebf758c5db98531531b8fe92c98' into gingerbread-plus-aosp
* commit '93ca4fc6943a3ebf758c5db98531531b8fe92c98':
use fs_type "emmc" instead of "block" for consistency (do not merge)
Remove the wacky notion of "roots" and "root paths" (those things that
look like "FOO:some/path" instead of just "/foo/some/path"). Let each
device specify its own table of available partitions and how to mount
them (needed for devices that use both MTD/yaffs2 and EMMC/ext4
partitions).
(Cherrypicked from gingerbread w/slight edits.)
Change-Id: I2479ce76b13e73f1d12035c89386c3a82b3edf51
Merge commit '3dba40da1e533c6f419857e4274d9d9dd55868b6'
* commit '3dba40da1e533c6f419857e4274d9d9dd55868b6':
remove the notion of "root path"; support mixed flash types (do not merge)
Merge commit 'd4208f9f9d4e9f268ba1888c1fe879ee73eb7e47' into gingerbread-plus-aosp
* commit 'd4208f9f9d4e9f268ba1888c1fe879ee73eb7e47':
remove the notion of "root path"; support mixed flash types (do not merge)
Remove the wacky notion of "roots" and "root paths" (those things that
look like "FOO:some/path" instead of just "/foo/some/path"). Let each
device specify its own table of available partitions and how to mount
them (needed for devices that use both MTD/yaffs2 and EMMC/ext4
partitions).
Change-Id: I18b0a572a71c5e087e0b7ae11b1774388339bfd1
Recovery itself no longer needs to access all these partitions;
manipulation of them is done by the updater binary. This is a small
first step towards removing roots entirely.
Change-Id: I3fbcada32079a37db4cc097861dfa91e0a08da30
Merge commit '1dcd2fd0c7cc44cae279a5088241bdf15f084cb8'
* commit '1dcd2fd0c7cc44cae279a5088241bdf15f084cb8':
do not merge - update to match ext4utils api
Merge commit '792b00712bb1411d3b0583bcea95b43b3107fb95' into gingerbread-plus-aosp
* commit '792b00712bb1411d3b0583bcea95b43b3107fb95':
do not merge - update to match ext4utils api
Merge commit 'bd4bc088e286b87a5d1469598644125ecc0fd547'
* commit 'bd4bc088e286b87a5d1469598644125ecc0fd547':
add the ability to seek to a raw location while reading MTD partition
Merge commit '8a8e6cc33cc0dcfe7e184b59d5ef1f1c29095509' into gingerbread-plus-aosp
* commit '8a8e6cc33cc0dcfe7e184b59d5ef1f1c29095509':
(cherry-pick) EMMC support in applypatch
Merge commit '56c5105bd7096704eaed35329b2c8c84cc282867' into gingerbread-plus-aosp
* commit '56c5105bd7096704eaed35329b2c8c84cc282867':
support for ext4/EMMC filesystems in updater binary