Revert "fastboot: add preflash command to help with large downloads+flash"

This reverts commit 6f1cd0b2ad7a16d4ec0b5324f992cae33dc34f34.

It causes some devices to fail (b/9581613). Revert for now.

Change-Id: I076158c704c2b4f0459322aa157c19ebd0c4615f
diff --git a/fastboot/engine.c b/fastboot/engine.c
index 4045759..8d46991 100644
--- a/fastboot/engine.c
+++ b/fastboot/engine.c
@@ -76,7 +76,6 @@
 #define OP_NOTICE     4
 #define OP_FORMAT     5
 #define OP_DOWNLOAD_SPARSE 6
-#define OP_COMMAND_IGNORE_FAIL 7
 
 typedef struct Action Action;
 
@@ -375,8 +374,6 @@
 
     // Following piece of code is similar to fb_queue_flash() but executes
     // actions directly without queuing
-    snprintf(cmd, sizeof(cmd), "preflash:%s", partition);
-    fb_command(usb, cmd);  /* Ignore status */
     fprintf(stderr, "sending '%s' (%lli KB)...\n", partition, image.image_size/1024);
     status = fb_download_data(usb, image.buffer, image.image_size);
     if (status) goto cleanup;
@@ -405,8 +402,6 @@
 {
     Action *a;
 
-    a = queue_action(OP_COMMAND_IGNORE_FAIL, "preflash:%s", ptn);
-    a->msg = mkmsg("prep for '%s' (%d KB)", ptn, sz / 1024);
     a = queue_action(OP_DOWNLOAD, "");
     a->data = data;
     a->size = sz;
@@ -420,8 +415,6 @@
 {
     Action *a;
 
-    a = queue_action(OP_COMMAND_IGNORE_FAIL, "preflash:%s", ptn);
-    a->msg = mkmsg("prep for sparse '%s' (%d KB)", ptn, sz / 1024);
     a = queue_action(OP_DOWNLOAD_SPARSE, "");
     a->data = s;
     a->size = 0;
@@ -582,9 +575,7 @@
 
 void fb_queue_download(const char *name, void *data, unsigned size)
 {
-    Action *a;
-    a = queue_action(OP_COMMAND_IGNORE_FAIL, "preflash:");
-    a = queue_action(OP_DOWNLOAD, "");
+    Action *a = queue_action(OP_DOWNLOAD, "");
     a->data = data;
     a->size = size;
     a->msg = mkmsg("downloading '%s'", name);
@@ -623,8 +614,6 @@
             status = fb_command(usb, a->cmd);
             status = a->func(a, status, status ? fb_get_error() : "");
             if (status) break;
-        } else if (a->op == OP_COMMAND_IGNORE_FAIL) {
-            fb_command(usb, a->cmd);   /* Ignore status */
         } else if (a->op == OP_QUERY) {
             status = fb_command_response(usb, a->cmd, resp);
             status = a->func(a, status, status ? fb_get_error() : resp);
diff --git a/fastboot/fastboot_protocol.txt b/fastboot/fastboot_protocol.txt
index eede5d1..2248992 100644
--- a/fastboot/fastboot_protocol.txt
+++ b/fastboot/fastboot_protocol.txt
@@ -1,5 +1,5 @@
 
-FastBoot  Version  0.4++
+FastBoot  Version  0.4
 ----------------------
 
 The fastboot protocol is a mechanism for communicating with bootloaders
@@ -67,6 +67,10 @@
 Example Session
 ---------------
 
+Host:    "getvar:version"        request version variable
+
+Client:  "OKAY0.4"               return version "0.4"
+
 Host:    "getvar:nonexistant"    request some undefined variable
 
 Client:  "OKAY"                  return value ""
@@ -119,11 +123,6 @@
   "flash:%s"           Write the previously downloaded image to the
                        named partition (if possible).
 
-  "preflash:%s"        Optionally prepare for a download + flash.
-                       E.g. flash directly during download. To deal with a
-                       failed "flash" followed by a "boot", we send
-                       "preflash:".
-
   "erase:%s"           Erase the indicated partition (clear to 0xFFs)
 
   "boot"               The previously downloaded data is a boot.img
@@ -141,9 +140,7 @@
 
   "powerdown"          Power off the device.
 
-* Note about sparse files
-  Large files can be split up using libsparse, and sent to the bootloader
-  as repeated chunks of "download:%08x" + "flash:%s".
+
 
 Client Variables
 ----------------
@@ -154,6 +151,9 @@
 
 The various currently defined names are:
 
+  version             Version of FastBoot protocol supported.
+                      It should be "0.3" for this document.
+
   version-bootloader  Version string for the Bootloader.
 
   version-baseband    Version string of the Baseband Software