[linux-yocto] [PATCH 24/25] FogBugz #545807: driver, misc: increase timeout value for claiming back buf
Meng.Li at windriver.com
Meng.Li at windriver.com
Tue Apr 3 19:37:47 PDT 2018
From: Richard Gong <richard.gong at intel.com>
commit f1835b2b7aa23cc1b47c178a3eb414eaf58fde63 from
https://github.com/altera-opensource/linux-socfpga.git
Firmware from the latest Quartus releases takes more time to process
data. As a result service layer needs increase timeout value so it can
claim back the submitted data buffer(s) from the secure world to program
FPGA properly.
Also add pr_err() to provide the error return value for the case
which service layer fails to make a SMC call to secure world for the
shared memory block reserved by secure monitor software.
Signed-off-by: Richard Gong <richard.gong at intel.com>
Signed-off-by: Meng Li <Meng.Li at windriver.com>
---
drivers/misc/intel-service.c | 4 +++-
include/linux/intel-service-client.h | 2 +-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/misc/intel-service.c b/drivers/misc/intel-service.c
index c87d9aa..4c63330 100644
--- a/drivers/misc/intel-service.c
+++ b/drivers/misc/intel-service.c
@@ -55,7 +55,7 @@
* from the secure world for FPGA manager to reuse, or to free the buffer(s)
* when all bit-stream data had be send.
*/
-#define FPGA_CONFIG_DATA_CLAIM_TIMEOUT_MS 20
+#define FPGA_CONFIG_DATA_CLAIM_TIMEOUT_MS 200
/*
* FPGA_CONFIG_STATUS_TIMEOUT_SEC - poll the FPGA configuration status,
* service layer will return error to FPGA manager when timeout occurs,
@@ -642,6 +642,8 @@ static int svc_normal_to_secure_shm_thread(void *data)
sh_mem->addr = res.a1;
sh_mem->size = res.a2;
} else {
+ pr_err("%s: after SMC call -- res.a0=0x%016x", __func__,
+ (unsigned int)res.a0);
sh_mem->addr = 0;
sh_mem->size = 0;
}
diff --git a/include/linux/intel-service-client.h b/include/linux/intel-service-client.h
index aac16ab..8cef141 100644
--- a/include/linux/intel-service-client.h
+++ b/include/linux/intel-service-client.h
@@ -49,7 +49,7 @@
/* Timeout settings for FPGA manager driver */
#define SVC_RECONFIG_REQUEST_TIMEOUT_MS 100
-#define SVC_RECONFIG_BUFFER_TIMEOUT_MS 100
+#define SVC_RECONFIG_BUFFER_TIMEOUT_MS 240
struct intel_svc_chan;
--
1.7.9.5
More information about the linux-yocto
mailing list