From 47cbbdadeb0080f2b75d9760e0a1080f76db64c8 Mon Sep 17 00:00:00 2001 From: zhongfeihong Date: Thu, 9 Nov 2023 13:46:28 +0800 Subject: [PATCH] kernel/fogo:fix The device automatically restarts during use fogo: fix spi read write driver Change-Id: I5a74bee3eb109f898529f1459303c18544ca2ba1 Reviewed-on: https://gerrit.mot.com/2790440 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Jun Weng Reviewed-by: Huosheng Liao Submit-Approved: Jira Key --- .../input/touchscreen/nova_0flash_mmi/nt36xxx.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/drivers/input/touchscreen/nova_0flash_mmi/nt36xxx.c b/drivers/input/touchscreen/nova_0flash_mmi/nt36xxx.c index 0fb79932d545..85ec9f5ac2e0 100644 --- a/drivers/input/touchscreen/nova_0flash_mmi/nt36xxx.c +++ b/drivers/input/touchscreen/nova_0flash_mmi/nt36xxx.c @@ -414,7 +414,12 @@ int32_t CTP_SPI_READ(struct spi_device *client, uint8_t *buf, uint16_t len) while (retries < 5) { ret = spi_read_write(client, buf, len, NVTREAD); - if (ret == 0) break; + if (ret == 0) + break; + else if (ret == -ETIMEDOUT) { + NVT_ERR("read error, ret = %d\n", ret); + break; + } retries++; } @@ -448,7 +453,13 @@ int32_t CTP_SPI_WRITE(struct spi_device *client, uint8_t *buf, uint16_t len) while (retries < 5) { ret = spi_read_write(client, buf, len, NVTWRITE); - if (ret == 0) break; + if (ret == 0) + break; + else if (ret == -ETIMEDOUT) { + NVT_ERR("write error, ret = %d\n", ret); + break; + } + retries++; }