From d296bfbc9347409624f54fe80b79284fc53d3266 Mon Sep 17 00:00:00 2001 From: liuwang2 Date: Tue, 28 Dec 2021 11:32:57 +0800 Subject: [PATCH] camera: ois: read 0xC bytes in cci_read sm6375 cci only support read 0xE bytes each time. if we read 0xE bytes, it will access invalid memory. so change to read 0xC bytes each time. Change-Id: Id59620df4e5cb16bfb31396fdc6fc65c60449600 Signed-off-by: liuwang2 Reviewed-on: https://gerrit.mot.com/2155699 SLTApproved: Slta Waiver SME-Granted: SME Approvals Granted Tested-by: Jira Key Reviewed-by: XiaoFeng Wang Reviewed-by: Reviewed-by: Long Cheng Reviewed-by: Zhichao Chen Submit-Approved: Jira Key --- drivers/cam_sensor_module/cam_ois/cam_ois_dev.c | 1 - drivers/cam_sensor_module/cam_ois/cam_ois_dev.h | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/cam_sensor_module/cam_ois/cam_ois_dev.c b/drivers/cam_sensor_module/cam_ois/cam_ois_dev.c index 49321f11f7ec..f78a10ccd7f6 100644 --- a/drivers/cam_sensor_module/cam_ois/cam_ois_dev.c +++ b/drivers/cam_sensor_module/cam_ois/cam_ois_dev.c @@ -337,7 +337,6 @@ static irqreturn_t cam_ois_vsync_irq_thread(int irq, void *data) do { // SM6375: CCI_VERSION_1_2_9 can only support read 0xE bytes data one time. - // Each loop read max supported bytes(0xE). One packet(62 bytes) need 5 times loop read. for (k = 0; k < PACKET_BYTE/READ_BYTE + 1; k++) { if (k == PACKET_BYTE/READ_BYTE) read_len = PACKET_BYTE%READ_BYTE; diff --git a/drivers/cam_sensor_module/cam_ois/cam_ois_dev.h b/drivers/cam_sensor_module/cam_ois/cam_ois_dev.h index 9292ee9f4210..a7425839b6ff 100644 --- a/drivers/cam_sensor_module/cam_ois/cam_ois_dev.h +++ b/drivers/cam_sensor_module/cam_ois/cam_ois_dev.h @@ -28,7 +28,7 @@ #define PACKET_ADDR 0x70B0 #define PACKET_BYTE 62 #define MAX_PACKET 3 -#define READ_BYTE 0xE +#define READ_BYTE 0xC enum cam_ois_state { CAM_OIS_INIT,