Refactor recovery's block device handling to work across variant hardware in a cleaner fashion.

Re add firmware update

Change-Id: I699ad22390ed14e597d17a7bcb32ad1b1af00b4b

support mmc misc

Change-Id: Iff02f8d03db6835f501d052140cebeefee521305

fix compile errors

Change-Id: I032edbd157a8a15f561bb83330c715ebaa008d18

fix compile errors

Change-Id: Idff3449be3376f22fceefc2c35637527f8df8f3f

Initial work to clean up the block devices.

Change-Id: I4be20ac124864a281be9cd116e211a2618404a27

all done

Change-Id: I0338f62f6a045556ebe90b0200685be113178319

fix up nandroid

Change-Id: I886f00271183e6d2921c080b0939341f2cf12a4d
diff --git a/commands.c b/commands.c
index 8db0aba..c7e4fd7 100644
--- a/commands.c
+++ b/commands.c
@@ -145,7 +145,7 @@
         LOGE("Can't format %s\n", root);
         return 1;
     }
-#ifdef HAS_DATADATA
+#ifdef BOARD_HAS_DATADATA
     if (0 == strcmp(root, "DATA:")) {
         ret = format_root_device("DATADATA:");
         if (ret != 0) {
@@ -653,6 +653,7 @@
 cmd_write_raw_image(const char *name, void *cookie,
         int argc, const char *argv[], PermissionRequestList *permissions)
 {
+#ifdef BOARD_USES_MTDUTILS
     UNUSED(cookie);
     CHECK_WORDS();
 //xxx permissions
@@ -738,6 +739,10 @@
         return -1;
     }
     return 0;
+#else
+    LOGE("Board does not support mtd utils.");
+    return -1;
+#endif
 }
 
 /* mark <resource> dirty|clean