powerpc/powernv: Pass buffer size to OPAL validate flash call
authorVasant Hegde <hegdevasant@linux.vnet.ibm.com>
Thu, 5 Jun 2014 04:43:40 +0000 (10:13 +0530)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Thu, 5 Jun 2014 04:54:04 +0000 (14:54 +1000)
We pass actual buffer size to opal_validate_flash() OPAL API call
and in return it contains output buffer size.

Commit cc146d1d (Fix little endian issues) missed to set the size
param before making OPAL call. So firmware image validation fails.

This patch sets size variable before making OPAL call.

Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
Tested-by: Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/platforms/powernv/opal-flash.c

index 145a80bc535492be11a521c97f9aa724a0122cc0..5c21d9c07f4539e3b56a534b4315c4f7ebbd78ca 100644 (file)
@@ -131,7 +131,8 @@ static inline void opal_flash_validate(void)
 {
        long ret;
        void *buf = validate_flash_data.buf;
-       __be32 size, result;
+       __be32 size = cpu_to_be32(validate_flash_data.buf_size);
+       __be32 result;
 
        ret = opal_validate_flash(__pa(buf), &size, &result);