فهرست منبع

Merge "msm: camera: sensor: Optimize OIS qtimer values" into camera-kernel.lnx.5.0

Savita Patted 4 سال پیش
والد
کامیت
ffa01440ef

+ 8 - 1
drivers/cam_sensor_module/cam_ois/cam_ois_core.c

@@ -782,6 +782,7 @@ static int cam_ois_pkt_parse(struct cam_ois_ctrl_t *o_ctrl, void *arg)
 		}
 		break;
 	case CAM_OIS_PACKET_OPCODE_READ: {
+		uint64_t qtime_ns;
 		struct cam_buf_io_cfg *io_cfg;
 		struct i2c_settings_array i2c_read_settings;
 
@@ -826,6 +827,12 @@ static int cam_ois_pkt_parse(struct cam_ois_ctrl_t *o_ctrl, void *arg)
 			return rc;
 		}
 
+		rc = cam_sensor_util_get_current_qtimer_ns(&qtime_ns);
+		if (rc < 0) {
+			CAM_ERR(CAM_SENSOR, "failed to get qtimer rc:%d");
+			return rc;
+		}
+
 		rc = cam_sensor_i2c_read_data(
 			&i2c_read_settings,
 			&o_ctrl->io_master_info);
@@ -837,7 +844,7 @@ static int cam_ois_pkt_parse(struct cam_ois_ctrl_t *o_ctrl, void *arg)
 
 		if (csl_packet->num_io_configs > 1) {
 			rc = cam_sensor_util_write_qtimer_to_io_buffer(
-				&io_cfg[1]);
+				qtime_ns, &io_cfg[1]);
 			if (rc < 0) {
 				CAM_ERR(CAM_OIS,
 					"write qtimer failed rc: %d", rc);

+ 1 - 8
drivers/cam_sensor_module/cam_sensor_utils/cam_sensor_util.c

@@ -302,12 +302,11 @@ static int32_t cam_sensor_get_io_buffer(
 }
 
 int32_t cam_sensor_util_write_qtimer_to_io_buffer(
-	struct cam_buf_io_cfg *io_cfg)
+	uint64_t qtime_ns, struct cam_buf_io_cfg *io_cfg)
 {
 	uintptr_t buf_addr = 0x0, target_buf = 0x0;
 	size_t buf_size = 0, target_size = 0;
 	int32_t rc = 0;
-	uint64_t qtime_ns = 0;
 
 	if (io_cfg == NULL) {
 		CAM_ERR(CAM_SENSOR,
@@ -315,12 +314,6 @@ int32_t cam_sensor_util_write_qtimer_to_io_buffer(
 		return -EINVAL;
 	}
 
-	rc = cam_sensor_util_get_current_qtimer_ns(&qtime_ns);
-	if (rc < 0) {
-		CAM_ERR(CAM_SENSOR, "failed to get qtimer rc:%d");
-		return rc;
-	}
-
 	if (io_cfg->direction == CAM_BUF_OUTPUT) {
 		rc = cam_mem_get_cpu_buf(io_cfg->mem_handle[0],
 			&buf_addr, &buf_size);

+ 1 - 1
drivers/cam_sensor_module/cam_sensor_utils/cam_sensor_util.h

@@ -43,7 +43,7 @@ int msm_camera_pinctrl_init
 int32_t cam_sensor_util_get_current_qtimer_ns(uint64_t *qtime_ns);
 
 int32_t cam_sensor_util_write_qtimer_to_io_buffer(
-	struct cam_buf_io_cfg *io_cfg);
+	uint64_t qtime_ns, struct cam_buf_io_cfg *io_cfg);
 
 int cam_sensor_i2c_command_parser(struct camera_io_master *io_master,
 	struct i2c_settings_array *i2c_reg_settings,