powerpc/powernv: Check image loaded or not before calling flash
authorVasant Hegde <hegdevasant@linux.vnet.ibm.com>
Fri, 13 Feb 2015 09:56:33 +0000 (15:26 +0530)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 25 Mar 2015 05:17:02 +0000 (16:17 +1100)
Present code checks for update_flash_data in opal_flash_term_callback().
update_flash_data has been statically initialized to zero, and that
is the value of FLASH_IMG_READY. Also code update initialization happens
during subsys init.

So if reboot is issued before the subsys init stage then we endup displaying
"Flashing new firmware" message.. which may confuse end user.

This patch fixes above described issue by initializes update_flash status
to invalid state.

Reported-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/platforms/powernv/opal-flash.c

index 5c21d9c07f4539e3b56a534b4315c4f7ebbd78ca..0ff07ff891f01991fccbed28a90185de5961af62 100644 (file)
@@ -120,7 +120,11 @@ static struct image_header_t       image_header;
 static struct image_data_t     image_data;
 static struct validate_flash_t validate_flash_data;
 static struct manage_flash_t   manage_flash_data;
-static struct update_flash_t   update_flash_data;
+
+/* Initialize update_flash_data status to No Operation */
+static struct update_flash_t   update_flash_data = {
+       .status = FLASH_NO_OP,
+};
 
 static DEFINE_MUTEX(image_data_mutex);