[PATCH] drivers: fpga: intel_sdm_mb: Add checking for INTEL_SIP_SMC_STATUS_BUSY

Jit Loon Lim jit.loon.lim at intel.com
Sun Sep 18 15:04:14 CEST 2022


From: Ley Foon Tan <ley.foon.tan at intel.com>

Add checking for INTEL_SIP_SMC_STATUS_BUSY (1).

Status busy means transfer is accepted but SDM does not have more freed
buffer. It is not an error. Continue process the data if receive OK and
BUSY status.

Signed-off-by: Ley Foon Tan <ley.foon.tan at intel.com>
Signed-off-by: Jit Loon Lim <jit.loon.lim at intel.com>
---
 drivers/fpga/intel_sdm_mb.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/fpga/intel_sdm_mb.c b/drivers/fpga/intel_sdm_mb.c
index f5fd9a14c2..807be2f871 100644
--- a/drivers/fpga/intel_sdm_mb.c
+++ b/drivers/fpga/intel_sdm_mb.c
@@ -70,7 +70,8 @@ static int send_bitstream(const void *rbf_data, size_t rbf_size)
 			debug("wr_ret = %d, rbf_data = %p, buf_size = %08lx\n",
 			      wr_ret, rbf_data, buf_size);
 
-			if (wr_ret)
+			if (wr_ret != INTEL_SIP_SMC_STATUS_OK &&
+			    wr_ret != INTEL_SIP_SMC_STATUS_BUSY)
 				continue;
 
 			rbf_size -= buf_size;
-- 
2.26.2



More information about the U-Boot mailing list