From: Eddie James <eajames@linux.ibm.com>
Date: Tue, 9 Feb 2021 17:12:32 +0000 (-0600)
Subject: fsi: occ: Don't accept response from un-initialized OCC
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=8a4659be08576141f47d47d94130eb148cb5f0df;p=linux.git

fsi: occ: Don't accept response from un-initialized OCC

If the OCC is not initialized and responds as such, the driver
should continue waiting for a valid response until the timeout
expires.

Signed-off-by: Eddie James <eajames@linux.ibm.com>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Fixes: 7ed98dddb764 ("fsi: Add On-Chip Controller (OCC) driver")
Link: https://lore.kernel.org/r/20210209171235.20624-2-eajames@linux.ibm.com
Signed-off-by: Joel Stanley <joel@jms.id.au>
---

diff --git a/drivers/fsi/fsi-occ.c b/drivers/fsi/fsi-occ.c
index f9a88083e5f34..dc74bffedd727 100644
--- a/drivers/fsi/fsi-occ.c
+++ b/drivers/fsi/fsi-occ.c
@@ -495,6 +495,7 @@ int fsi_occ_submit(struct device *dev, const void *request, size_t req_len,
 			goto done;
 
 		if (resp->return_status == OCC_RESP_CMD_IN_PRG ||
+		    resp->return_status == OCC_RESP_CRIT_INIT ||
 		    resp->seq_no != seq_no) {
 			rc = -ETIMEDOUT;