1. 23 Jul, 2009 1 commit
    • Doug Zongker's avatar
      only build flash_image for eng · 20697b96
      Doug Zongker authored
      With the recovery image being installed by applypatch, the flash_image
      tool isn't needed any more.  Continue to build it for eng just in case
      it's handy for debugging.
      20697b96
  2. 14 Jul, 2009 1 commit
    • Doug Zongker's avatar
      remove amend · 64893ccc
      Doug Zongker authored
      Yank all the code to install OTA packages out of the recovery binary
      itself.  Now packages are installed by a binary included in the
      package (run as a child of recovery), so we can make improvements in
      the installation process without waiting for a new release to use
      them.
      64893ccc
  3. 01 Jul, 2009 1 commit
  4. 26 Jun, 2009 2 commits
  5. 25 Jun, 2009 1 commit
  6. 24 Jun, 2009 1 commit
    • Doug Zongker's avatar
      improve updater progress bar · fbf3c10e
      Doug Zongker authored
      Let recovery accept set_progress commands to control progress over the
      'current segment' of the bar.  Add a set_progress() builtin to the
      updater binary.
      fbf3c10e
  7. 18 Jun, 2009 2 commits
    • Doug Zongker's avatar
      add file_getprop() to updater · 47cace98
      Doug Zongker authored
      Add a function to read a property from a ".prop"-formatted file
      (key=value pairs, one per line, ignore # comment lines and blank
      lines).  Move ErrorAbort to the core of edify; it's not specific to
      updater now that errors aren't stored in the app cookie.
      47cace98
    • Doug Zongker's avatar
      let the "firmware" command take the file straight from the package · fb2e3af3
      Doug Zongker authored
      To do a firmware-install-on-reboot, the update binary tells recovery
      what file to install before rebooting.  Let this file be specified as
      "PACKAGE:<foo>" to indicate taking the file out of the OTA package,
      avoiding an extra copy to /tmp.  Bump the API version number to
      reflect this change.
      fb2e3af3
  8. 12 Jun, 2009 4 commits
    • Doug Zongker's avatar
      add less_than_int, greater_than_int to edify · e3da02e7
      Doug Zongker authored
      Add functions less_than_int() and greater_than_int() that interpret
      their args as ints and do the comparison.  ("<" and ">" operators, if
      implemented, should do string comparison.)  This lets us do the build
      time check currently done by the check_prereq binary.
      e3da02e7
    • Doug Zongker's avatar
      fixes to edify and updater script · d9c9d10d
      Doug Zongker authored
      A few more changes to edify:
      
        - fix write_raw_image(); my last change neglected to close the write
          context, so the written image was corrupt.
      
        - each expression tracks the span of the source code from which it
          was compiled, so that assert()'s error message can include the
          source of the expression that failed.
      
        - the 'cookie' argument to each Function is replaced with a State
          object, which contains the cookie, the source script (for use with
          the above spans), and the current error message (replacing the
          global variables that were used for this purpose).
      
        - in the recovery image, a new command "ui_print" can be sent back
          through the command pipe to cause text to appear on the screen.
          Add a new ui_print() function to print things from scripts.
          Rename existing "print" function to "stdout".
      d9c9d10d
    • Doug Zongker's avatar
      edify extensions for OTA package installation, part 2 · 8edb00c9
      Doug Zongker authored
      Adds more edify functions for OTAs:
      
        is_mounted getprop apply_patch apply_patch_check apply_patch_space
        write_raw_image write_firmware_image package_extract_file
      
      This allows us to install radios, hboots, boot images, and install
      incremental OTA packages.
      
      Fixes a couple of dumb bugs in edify itself:
      
        - we were doubling the size of the function table each time it was
          *not* full, rather than each time it was full
      
        - "no such function" errors weren't visible to the parser, so they
          didn't prevent execution of the script.
      8edb00c9
    • Doug Zongker's avatar
      fix sim build in donut, too · 9dbc027b
      Doug Zongker authored
      9dbc027b
  9. 11 Jun, 2009 1 commit
    • Doug Zongker's avatar
      edify extensions for OTA package installation, part 1 · 9931f7f3
      Doug Zongker authored
      Adds the following edify functions:
      
        mount unmount format show_progress delete delete_recursive
        package_extract symlink set_perm set_perm_recursive
      
      This set is enough to extract and install the system part of a (full)
      OTA package.
      
      Adds the updater binary that extracts an edify script from the OTA
      package and then executes it.  Minor changes to the edify core (adds a
      sleep() builtin for debugging, adds "." to the set of characters that
      can appear in an unquoted string).
      9931f7f3
  10. 10 Jun, 2009 2 commits
  11. 04 Jun, 2009 1 commit
  12. 02 Jun, 2009 1 commit
    • Doug Zongker's avatar
      remove unused permissions scheme from amend · f28c916e
      Doug Zongker authored
      Amend (aka the recovery command language) had a half-implemented
      scheme of limiting which commands OTA packages were allowed to
      execute.  It's not clear what this was ever supposed to be good for.
      Remove it.
      f28c916e
  13. 29 May, 2009 1 commit
    • Doug Zongker's avatar
      don't say "install complete" when it really isn't · 07e1dca7
      Doug Zongker authored
      Change the recovery UI so that when there is a hboot or radio update
      pending (which the user most do a home+back reboot to actually
      install), the UI tells them so, instead of saying "Install from sdcard
      complete."
      07e1dca7
  14. 08 May, 2009 1 commit
    • Doug Zongker's avatar
      undo temporary alignment hack · 1c4ceae3
      Doug Zongker authored
      Remove the memory alignment that mysteriously made OTA installs work,
      in anticipation of a kernel that fixes the actual problem.  Handle
      EINTR properly.
      1c4ceae3
  15. 06 May, 2009 1 commit
    • Doug Zongker's avatar
      align data passed to write() on 32k boundaries · 683c4628
      Doug Zongker authored
      In donut, OTA installation often encounters the write() system call
      doing short writes -- which is legal but unexpected -- or failing with
      ENOSPC when plenty of space is available.  Passing aligned memory
      buffers to write() appears to prevent (or at least reduce the
      frequency) of these problems.  b/1833052 has been filed to look at the
      underlying problem, but this change aligns buffers we use with write()
      so we can OTA for now (or see if this problem still occurs).
      683c4628
  16. 30 Apr, 2009 1 commit
    • Doug Zongker's avatar
      handle short writes when unzipping files · 596271fa
      Doug Zongker authored
      minzip fails if write() doesn't write all the data in one call.
      Apparently this was good enough before, but it causes OTAs to fail all
      the time now (maybe due to the recently-submitted kernel)?  Change
      code to attempt continuing after short writes.
      596271fa
  17. 23 Apr, 2009 1 commit
  18. 01 Apr, 2009 3 commits
  19. 27 Mar, 2009 1 commit
  20. 25 Mar, 2009 3 commits
  21. 20 Mar, 2009 1 commit
  22. 04 Mar, 2009 2 commits
  23. 03 Mar, 2009 2 commits
  24. 10 Feb, 2009 1 commit
  25. 10 Jan, 2009 1 commit
  26. 18 Dec, 2008 1 commit
  27. 21 Oct, 2008 1 commit