techpack: camera-xiaomi-cas: Import xiaomi changes from psyche-r-oss

Change-Id: Ib49a8aa3117154ebb04dd2fa3ee9b5d02aab5d0c
This commit is contained in:
ChaptSand
2023-09-23 08:29:56 +01:00
committed by Sebastiano Barezzi
parent 5ac21cad97
commit 93beac83d7
4 changed files with 26 additions and 7 deletions

View File

@@ -502,11 +502,11 @@ static int cam_ife_csid_global_reset(struct cam_ife_csid_hw *csid_hw)
cam_io_w_mb(0x2, soc_info->reg_map[0].mem_base +
csid_reg->rdi_reg[i]->csid_rdi_cfg0_addr);
/* reset HW regs first, then SW */
rc = cam_ife_csid_reset_regs(csid_hw, true);
/* reset SW regs first, then HW */
rc = cam_ife_csid_reset_regs(csid_hw, false);
if (rc < 0)
goto end;
rc = cam_ife_csid_reset_regs(csid_hw, false);
rc = cam_ife_csid_reset_regs(csid_hw, true);
if (rc < 0)
goto end;

View File

@@ -1454,6 +1454,15 @@ int cam_flash_pmic_pkt_parser(struct cam_flash_ctrl *fctrl, void *arg)
"Apply setting failed: %d",
rc);
//xiaomi add start
if(rc && CAM_FLASH_STATE_START == fctrl->flash_state)
{
CAM_ERR(CAM_FLASH, "cannot apply settings rc = %d for state %d",
rc, fctrl->flash_state);
return rc;
}
//xiaomi add end
fctrl->flash_state = CAM_FLASH_STATE_CONFIG;
break;
}

View File

@@ -951,10 +951,19 @@ static int cam_ois_get_data(struct cam_ois_ctrl_t *o_ctrl,
t_now = get_cycles();
boottime64 = (uint64_t)((ts64.tv_sec * 1000000000) + ts64.tv_nsec);
rc = camera_io_dev_read_seq(&(o_ctrl->io_master_info),
OIS_DATA_ADDR, o_ctrl->ois_data.data,
CAMERA_SENSOR_I2C_TYPE_BYTE, CAMERA_SENSOR_I2C_TYPE_BYTE,
num_data);
if (o_ctrl->opcode.ois_get_data != 0) {
uint32_t ois_addr = (o_ctrl->opcode.ois_get_data & 0xFFFF0000) >> 16;
uint32_t ois_addr_type = o_ctrl->opcode.ois_get_data & 0xFFFF;
rc = camera_io_dev_read_seq(&(o_ctrl->io_master_info),
ois_addr, o_ctrl->ois_data.data,
ois_addr_type, CAMERA_SENSOR_I2C_TYPE_BYTE,
num_data);
} else {
rc = camera_io_dev_read_seq(&(o_ctrl->io_master_info),
OIS_DATA_ADDR, o_ctrl->ois_data.data,
CAMERA_SENSOR_I2C_TYPE_BYTE, CAMERA_SENSOR_I2C_TYPE_BYTE,
num_data);
}
o_ctrl->ois_data.data_timestamp = (uint64_t)(t_now*10000/192);//< QTimer Freq = 19.2 MHz
if (rc < 0) {

View File

@@ -118,6 +118,7 @@ struct cam_ois_opcode {
uint32_t coeff;
uint32_t pheripheral;
uint32_t memory;
uint32_t ois_get_data; //Xiaomi add
uint8_t fw_addr_type;
uint8_t is_addr_increase;
uint8_t is_addr_indata;