This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Android Recovery support for am3517evm

We are developing an Android tablet, and are now looking at alternatives to providing a customer recovery/update feature similar to what's available for most Android phones on the market.  Here are a few of our product details:

  • Our board is closely based on the am3517evm eval board
  • We're using the TI Gingerbread 2.3.4 release
  • During development we mostly use SD cards for program store.  The shipped product will use NAND for program store.
  • The recovery/update mechanism should be usable both for systems just needing a refresh, and for systems needing an update.
  • An update might include only a few files, such as Android apps, or a full replacement of Android, or the Kernel, or U-Boot.  There is some point, currently unknown, at which the recovery mechanism would be inadequate, and we would instead require the customer to return the product to the factory.

We have some very basic questions about how to provide this recovery feature:

1) The TI distribution includes folder bootable/recovery, containing files such as recovery.c, bootloader.c, etc.  The default build apparently compiles those files, and places the objects in folder target/product/am3517evm/obj/EXECUTABLES/recovery_intermediates.  Do those files implement a reasonable approach for recovery?

2) I've seen no documentation other than in the comments in those files.  Does other documentation exist, and if so, where?

3) How is recovery invoked?  Apparently some phones do this with a special keypad sequence.  What would we do on the am3517evm eval board?

4) The recovery scheme apparently involves partitions 'cache' and 'recovery'.  Is there a recommended means for creating those partitions, or is this strictly in our court as to how we create these partitions?

Thanks,
Ron