Commit Graph

744 Commits

Author SHA1 Message Date
Doug Zongker cb2bf046f5 am cb1bdc9e: (-s ours) am c91612d4: Merge "remove pixelflinger from recovery"
* commit 'cb1bdc9e427b8b7262d1e56fef47d2bb6d76139f':
  remove pixelflinger from recovery
2014-03-12 20:34:25 +00:00
Doug Zongker b3a584f162 am 7003ff3b: am 8f087d02: Merge "update tools for making recovery images"
* commit '7003ff3b54e9081dba92ecfea0594355af40e6dd':
  update tools for making recovery images
2014-03-12 20:28:58 +00:00
Doug Zongker e319a0d08e am aa6b8026: (-s ours) am 59508993: Merge "allow CheckKey to request mounting /system"
* commit 'aa6b8026ed5ae32f10b948edd26e3f489ba20751':
  allow CheckKey to request mounting /system
2014-03-12 20:28:58 +00:00
Doug Zongker 4fff5aa7dc am c15b7865: (-s ours) resolved conflicts for merge of ea868b38 to klp-modular-dev-plus-aosp
* commit 'c15b7865badc3ac406a7ce978baa65151a50bb55':
  change how recovery animation is implemented
2014-03-12 20:11:06 +00:00
Doug Zongker cb1bdc9e42 am c91612d4: Merge "remove pixelflinger from recovery"
* commit 'c91612d4668688c5d7bf76c258c11010697a03d2':
  remove pixelflinger from recovery
2014-03-12 02:42:57 +00:00
Doug Zongker 7003ff3b54 am 8f087d02: Merge "update tools for making recovery images"
* commit '8f087d024619467de8609656e8a14370f24b817c':
  update tools for making recovery images
2014-03-12 02:42:57 +00:00
Doug Zongker aa6b8026ed am 59508993: Merge "allow CheckKey to request mounting /system"
* commit '5950899369b712f66aa56c857c66ed1b6741f0e0':
  allow CheckKey to request mounting /system
2014-03-12 02:42:56 +00:00
Doug Zongker c15b7865ba resolved conflicts for merge of ea868b38 to klp-modular-dev-plus-aosp
Change-Id: I8cc3b8101bccf7fd697f9a7b73732d1000dc27a1
2014-03-11 19:39:26 -07:00
Doug Zongker c91612d466 Merge "remove pixelflinger from recovery" 2014-03-11 21:55:48 +00:00
Doug Zongker 16f97c3961 remove pixelflinger from recovery
Recovery now draws directly to the framebuffer by rolling its own
graphics code, rather than depending on libpixelflinger.

The recovery UI is modified slightly to eliminate operations that are
slow with the software implementation: when the text display / menu is
turned on, it now appears on a black background instead of a dimmed
version of the recovery icon.

There's probably substantial room for optimization of the graphics
operations.

Bug: 12131110
Change-Id: Iab6520e0a7aaec39e2ce39377c10aef82ae0c595

Conflicts:
	minui/resources.c
2014-03-11 14:40:04 -07:00
Doug Zongker 8f087d0246 Merge "update tools for making recovery images" 2014-03-11 21:34:32 +00:00
Doug Zongker 3ceeb580eb update tools for making recovery images
We no longer render animations as a base image with a
possibly-partially-transparent overlay drawn over it, so delete the
make-overlay.py tool.  Now we represent them as series of images that
are interlaced by row (with a special text chunk in the PNG file
specifying the number of frames) so add the interlace-frames.py tool
to make those.

Change-Id: I866db269107a21351c3df3b4683f233f72234334
2014-03-11 14:29:50 -07:00
Doug Zongker 5950899369 Merge "allow CheckKey to request mounting /system" 2014-03-11 21:21:33 +00:00
Doug Zongker 4db31d20c9 allow CheckKey to request mounting /system
Also provide a default implementation of CheckKey that's reasonable
for many devices (those that have power and volume keys).

Change-Id: Icf6c7746ebd866152d402059dbd27fd16bd51ff8
2014-03-11 14:19:48 -07:00
Doug Zongker ea868b3846 Merge "change how recovery animation is implemented" 2014-03-11 21:18:56 +00:00
Doug Zongker 469954fe3d change how recovery animation is implemented
Instead of one 'base' installing image and a number of overlay images
that are drawn on top of it, we represent the installing animation
with one PNG that contains all the animation frames, interlaced by
row.  The PNG is expected to have a text chunk with the keyword
'Frames' and a value that's the number of frames (as an ascii
string).  This representation provides better compression, removes the
need to subclass ScreenRecoveryUI just to change the position of the
overlay or number of frames, and doesn't require gr_blit() to support
an alpha channel.

We also remove the 'indeterminate' progress bar used when wiping data
and/or cache.  The main animation serves the same purpose (showing
that the device is still alive); the spinning progress bar has been
redundant for a while.

This changes the default recovery animation to include the
antenna-wiggling and gear-turning that's used in the Nexus 5 recovery
animation.

Change-Id: I51930a76035ac09969a25472f4e572b289418729

Conflicts:
	screen_ui.cpp
	screen_ui.h
2014-03-11 14:06:35 -07:00
Doug Zongker 18f72dc551 Merge "separate fbdev-specific code out from minui" 2014-03-11 20:39:22 +00:00
Doug Zongker 830b3e3363 separate fbdev-specific code out from minui
Isolate the code that interacts with fbdev, in preparation for adding
a new backend.

Change-Id: I19105e9da1ca6408cebc110f7e2bb5abfb481ee9
2014-03-11 13:22:04 -07:00
Doug Zongker 5120c9fbb6 update tools for making recovery images
We no longer render animations as a base image with a
possibly-partially-transparent overlay drawn over it, so delete the
make-overlay.py tool.  Now we represent them as series of images that
are interlaced by row (with a special text chunk in the PNG file
specifying the number of frames) so add the interlace-frames.py tool
to make those.

Change-Id: I79443f125f9c7d8d61cd09e3434745e0ef38893f
2014-03-11 12:39:33 -07:00
Doug Zongker 39cf417e17 remove pixelflinger from recovery
Recovery now draws directly to the framebuffer by rolling its own
graphics code, rather than depending on libpixelflinger.

The recovery UI is modified slightly to eliminate operations that are
slow with the software implementation: when the text display / menu is
turned on, it now appears on a black background instead of a dimmed
version of the recovery icon.

There's probably substantial room for optimization of the graphics
operations.

Bug: 12131110
Change-Id: Iab6520e0a7aaec39e2ce39377c10aef82ae0c595
2014-03-11 11:10:00 -07:00
Doug Zongker eac881c952 change how recovery animation is implemented
Instead of one 'base' installing image and a number of overlay images
that are drawn on top of it, we represent the installing animation
with one PNG that contains all the animation frames, interlaced by
row.  The PNG is expected to have a text chunk with the keyword
'Frames' and a value that's the number of frames (as an ascii
string).  This representation provides better compression, removes the
need to subclass ScreenRecoveryUI just to change the position of the
overlay or number of frames, and doesn't require gr_blit() to support
an alpha channel.

We also remove the 'indeterminate' progress bar used when wiping data
and/or cache.  The main animation serves the same purpose (showing
that the device is still alive); the spinning progress bar has been
redundant for a while.

This changes the default recovery animation to include the
antenna-wiggling and gear-turning that's used in the Nexus 5 recovery
animation.

Change-Id: I51930a76035ac09969a25472f4e572b289418729
2014-03-07 09:45:44 -08:00
Doug Zongker 182c1df40a Merge "support don't-care maps when writing the system image" 2014-03-04 16:52:07 +00:00
Doug Zongker a47996c6a3 am 49968f09: am 2f173bde: Merge "ADB sideload command not work"
* commit '49968f0903eb69b1505bc99926344aacee4e81b6':
  ADB sideload command not work
2014-02-26 22:39:08 +00:00
Doug Zongker 49968f0903 am 2f173bde: Merge "ADB sideload command not work"
* commit '2f173bde6584f4c560ecc3f13f6e890f52815050':
  ADB sideload command not work
2014-02-26 22:31:09 +00:00
Doug Zongker 2f173bde65 Merge "ADB sideload command not work" 2014-02-26 22:17:57 +00:00
Doug Zongker c9d6e4ff51 support don't-care maps when writing the system image
Make package_extract_file() take an optional third argument which is
the pathname (in the package zip) of a map of don't-care regions to
skip over when writing the file.

Modify syspatch() to take source and target don't-care maps and use
them when patching the system partition.

Add the wipe_block_device() function to do a discard of all data on
the partition.

Change-Id: I8c856054edfb6aab2f3e5177f16d9d78add20be4
2014-02-24 16:02:50 -08:00
Benoit Goby 0d372a553e am ed75be6d: am ac189bf6: Merge "recovery: Fix adb with linux 3.10"
* commit 'ed75be6de9d883a2524065940d732593fa26ac19':
  recovery: Fix adb with linux 3.10
2014-02-21 04:21:03 +00:00
Benoit Goby ed75be6de9 am ac189bf6: Merge "recovery: Fix adb with linux 3.10"
* commit 'ac189bf645123b4dc79cd2053f5eb07917774d66':
  recovery: Fix adb with linux 3.10
2014-02-20 22:37:58 +00:00
Benoit Goby ac189bf645 Merge "recovery: Fix adb with linux 3.10" 2014-02-20 22:32:32 +00:00
Doug Zongker 0ac1cbaa76 add flag for GPL license
updater now depends on the GPL'd libraries libsyspatch and libxdelta3,
so be careful when taking code from this directory.

Change-Id: Ib6f8c50ce7052912b9d81ff96d095f778bf9a3d0
2014-02-20 10:15:44 -08:00
Benoit Goby 1b9641127c recovery: Fix adb with linux 3.10
In kernel 3.10, f_adb has been removed and adbd can use functionfs
instead. Mount functionfs on boot for adbd. On older kernels, mount
will fail silently and adbd will revert to f_adb.

Change-Id: I5db57aaf35b35859ea88c7d0e0661d8c553e5811
2014-02-19 17:48:49 -08:00
Doug Zongker f2ff0a2097 Merge "clean up some warnings when building recovery" 2014-02-18 17:48:19 +00:00
Maxim Siniavine 48f4c3d60c Merge "Fix a crash when going into recovery mode." 2014-02-14 00:03:28 +00:00
Maxim Siniavine e7b2888245 Fix a crash when going into recovery mode.
When going into recovery mode withoug recovery command file present, uncrypt crashes
and the device gets stuck and eventually shuts down.

Check that the command file is present before trying to read from it.

Change-Id: If0192d597032be0067738e437188d92993ce56f7
2014-02-13 15:53:38 -08:00
Doug Zongker 3eb681d1de remove remaining libminelf references
Change-Id: Id38b08607829bccc031693cc03e60e849903b6f8
2014-02-13 15:49:35 -08:00
Doug Zongker 0d32f259cd clean up some warnings when building recovery
Change-Id: I1541534ee6978ddf8d548433986679ce9507d508
2014-02-13 15:34:18 -08:00
Doug Zongker a1bc148c7c remove 'retouch' ASLR support
Older versions of android supported an ASLR system where binaries were
randomly twiddled at OTA install time.  Remove support for this; we
now use the ASLR support in the linux kernel.

Change-Id: I8348eb0d6424692668dc1a00e2416fbef6c158a2
2014-02-13 15:18:19 -08:00
Doug Zongker 52b4036eb8 add syspatch support to updater
Add the syspatch() function, which can apply xdelta3+xz patches using
the libsyspatch library.

Change-Id: Idc1921e449020923bcaf425a1983bec0833e47ed
2014-02-13 14:15:26 -08:00
Doug Zongker a9300301ce add mzGetStoredEntry function
mzGetStoredEntry gives you a pointer and address to the data of a zip
entry, assuming that entry is stored rather than deflated.

Change-Id: Ifb39777c98d1d50475ef7de419cf28935f5f9965
2014-02-13 08:30:41 -08:00
Colin Cross 707d321a87 am 2739ed96: am a5d105e2: Merge "recovery: fix building with pointer-to-int errors turned on"
* commit '2739ed9628f72813d213b7a429c4c1b8dcebe5fc':
  recovery: fix building with pointer-to-int errors turned on
2014-02-06 03:07:48 +00:00
Colin Cross 2739ed9628 am a5d105e2: Merge "recovery: fix building with pointer-to-int errors turned on"
* commit 'a5d105e2397d81537facd93fd8a9d3e263d57dc9':
  recovery: fix building with pointer-to-int errors turned on
2014-02-06 02:59:38 +00:00
Colin Cross a5d105e239 Merge "recovery: fix building with pointer-to-int errors turned on" 2014-02-06 02:14:22 +00:00
Colin Cross 92cdf9c372 recovery: fix building with pointer-to-int errors turned on
Use intptr_t/uintptr_t to cast between pointer and int to allow
building with -Werror=pointer-to-int-cast and
Werror=int-to-pointer-cast turned on.

Cast to char* instead of unsigned int for pointer arithmetic.

Change-Id: Ia862306fdcca53866b330e8cf726f3d62f2248a0
2014-02-05 17:34:45 -08:00
Colin Cross 4068f6aff2 am fd84f65d: am f3532072: Merge "minadbd: remove dead code"
* commit 'fd84f65dcda3c7e4b42c71a7df85efebdbf7ea7a':
  minadbd: remove dead code
2014-01-27 20:46:36 +00:00
Colin Cross fd84f65dcd am f3532072: Merge "minadbd: remove dead code"
* commit 'f353207298ed14d0e6943353dd9788421a7537b8':
  minadbd: remove dead code
2014-01-27 12:40:26 -08:00
Colin Cross f353207298 Merge "minadbd: remove dead code" 2014-01-27 20:35:19 +00:00
Colin Cross e787fee8f2 minadbd: remove dead code
Change-Id: Ia1f34a17ae582575f8cd3514ed7bc015b0a5006e
2014-01-24 14:51:54 -08:00
Nick Kralevich 4d1b0903ff am f4641299: am 295e74aa: Merge "adbd: switch to su domain when running as root"
* commit 'f464129950eaea49b1234fdcfd04ec8723e3c672':
  adbd: switch to su domain when running as root
2014-01-24 18:14:50 +00:00
Nick Kralevich f464129950 am 295e74aa: Merge "adbd: switch to su domain when running as root"
* commit '295e74aa20c9f32e1e46fc1b0bf0975642a8c95b':
  adbd: switch to su domain when running as root
2014-01-24 10:06:45 -08:00
Nick Kralevich 295e74aa20 Merge "adbd: switch to su domain when running as root" 2014-01-24 17:59:52 +00:00