Merge "msm: camera: csiphy: Update the csiphy programming sequence" into camera-kernel.lnx.5.0
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

commit
009a397666
@@ -498,8 +498,7 @@ int32_t cam_csiphy_parse_dt_info(struct platform_device *pdev,
|
|||||||
csiphy_dev->is_csiphy_3phase_hw = CSI_3PHASE_HW;
|
csiphy_dev->is_csiphy_3phase_hw = CSI_3PHASE_HW;
|
||||||
csiphy_dev->is_divisor_32_comp = true;
|
csiphy_dev->is_divisor_32_comp = true;
|
||||||
csiphy_dev->clk_lane = 0;
|
csiphy_dev->clk_lane = 0;
|
||||||
csiphy_dev->ctrl_reg->data_rates_settings_table =
|
csiphy_dev->ctrl_reg->data_rates_settings_table = NULL;
|
||||||
&data_rate_delta_table_2_1_0;
|
|
||||||
} else {
|
} else {
|
||||||
CAM_ERR(CAM_CSIPHY, "invalid hw version : 0x%x",
|
CAM_ERR(CAM_CSIPHY, "invalid hw version : 0x%x",
|
||||||
csiphy_dev->hw_version);
|
csiphy_dev->hw_version);
|
||||||
|
@@ -12,16 +12,17 @@ struct csiphy_reg_parms_t csiphy_v2_1_0 = {
|
|||||||
.mipi_csiphy_interrupt_status0_addr = 0x10B0,
|
.mipi_csiphy_interrupt_status0_addr = 0x10B0,
|
||||||
.mipi_csiphy_interrupt_clear0_addr = 0x1058,
|
.mipi_csiphy_interrupt_clear0_addr = 0x1058,
|
||||||
.mipi_csiphy_glbl_irq_cmd_addr = 0x1028,
|
.mipi_csiphy_glbl_irq_cmd_addr = 0x1028,
|
||||||
.csiphy_common_array_size = 6,
|
.csiphy_common_array_size = 7,
|
||||||
.csiphy_reset_array_size = 5,
|
.csiphy_reset_array_size = 5,
|
||||||
.csiphy_2ph_config_array_size = 23,
|
.csiphy_2ph_config_array_size = 23,
|
||||||
.csiphy_3ph_config_array_size = 29,
|
.csiphy_3ph_config_array_size = 34,
|
||||||
.csiphy_2ph_clock_lane = 0x1,
|
.csiphy_2ph_clock_lane = 0x1,
|
||||||
.csiphy_2ph_combo_ck_ln = 0x10,
|
.csiphy_2ph_combo_ck_ln = 0x10,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct csiphy_reg_t csiphy_common_reg_2_1_0[] = {
|
struct csiphy_reg_t csiphy_common_reg_2_1_0[] = {
|
||||||
{0x1014, 0xd5, 0x00, CSIPHY_LANE_ENABLE},
|
{0x1014, 0xd5, 0x00, CSIPHY_2PH_REGS},
|
||||||
|
{0x1014, 0x2a, 0x00, CSIPHY_3PH_REGS},
|
||||||
{0x1018, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1018, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x101C, 0x5a, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x101C, 0x5a, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x1000, 0x01, 0x01, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x01, 0x01, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -31,8 +32,8 @@ struct csiphy_reg_t csiphy_common_reg_2_1_0[] = {
|
|||||||
|
|
||||||
struct csiphy_reg_t csiphy_reset_reg_2_1_0[] = {
|
struct csiphy_reg_t csiphy_reset_reg_2_1_0[] = {
|
||||||
{0x1014, 0x00, 0x00, CSIPHY_LANE_ENABLE},
|
{0x1014, 0x00, 0x00, CSIPHY_LANE_ENABLE},
|
||||||
{0x1018, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x101C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x101C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x1018, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x1000, 0x01, 0x01, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x01, 0x01, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
};
|
};
|
||||||
@@ -73,7 +74,7 @@ struct csiphy_reg_t csiphy_2ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0008, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
{0x0008, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0010, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0010, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x005C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
{0x005C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0060, 0xF1, 0x00, CSIPHY_SKEW_CAL},
|
{0x0060, 0xFD, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0064, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
{0x0064, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
@@ -123,7 +124,7 @@ struct csiphy_reg_t csiphy_2ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0408, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
{0x0408, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0410, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0410, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x045C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
{0x045C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0460, 0xF1, 0x00, CSIPHY_SKEW_CAL},
|
{0x0460, 0xFD, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0464, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
{0x0464, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
@@ -148,7 +149,7 @@ struct csiphy_reg_t csiphy_2ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0808, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
{0x0808, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0810, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0810, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x085C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
{0x085C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0860, 0xF1, 0x00, CSIPHY_SKEW_CAL},
|
{0x0860, 0xFD, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0864, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
{0x0864, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
@@ -173,7 +174,7 @@ struct csiphy_reg_t csiphy_2ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0C08, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
{0x0C08, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0C10, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0C10, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0C5C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
{0x0C5C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0C60, 0xF1, 0x00, CSIPHY_SKEW_CAL},
|
{0x0C60, 0xFD, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0C64, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
{0x0C64, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
@@ -192,7 +193,6 @@ struct csiphy_reg_t
|
|||||||
{0x0000, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0000, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x000C, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
{0x000C, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
||||||
{0x0038, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0038, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0028, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
|
||||||
{0x002C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x002C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0034, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0034, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x001C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x001C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -203,7 +203,7 @@ struct csiphy_reg_t
|
|||||||
{0x0008, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
{0x0008, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0010, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0010, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x005C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
{0x005C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0060, 0xF1, 0x00, CSIPHY_SKEW_CAL},
|
{0x0060, 0xFD, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0064, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
{0x0064, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
@@ -218,7 +218,6 @@ struct csiphy_reg_t
|
|||||||
{0x0E00, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0E00, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0E0C, 0xFF, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0E0C, 0xFF, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0E38, 0x1F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0E38, 0x1F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0E28, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
|
||||||
{0x0E2C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0E2C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0E34, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0E34, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0E1C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0E1C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -240,11 +239,10 @@ struct csiphy_reg_t
|
|||||||
{0x0498, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0498, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0494, 0x07, 0x01, CSIPHY_DEFAULT_PARAMS},
|
{0x0494, 0x07, 0x01, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0430, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0430, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0028, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
{0x0428, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
||||||
{0x0400, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0400, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x040C, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
{0x040C, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
||||||
{0x0438, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0438, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0428, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
|
||||||
{0x042C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x042C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0434, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0434, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x041C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x041C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -255,7 +253,7 @@ struct csiphy_reg_t
|
|||||||
{0x0408, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
{0x0408, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0410, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0410, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x045C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
{0x045C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0460, 0xF1, 0x00, CSIPHY_SKEW_CAL},
|
{0x0460, 0xFD, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0464, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
{0x0464, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
@@ -266,7 +264,6 @@ struct csiphy_reg_t
|
|||||||
{0x0898, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0898, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0894, 0x07, 0x01, CSIPHY_DEFAULT_PARAMS},
|
{0x0894, 0x07, 0x01, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0830, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0830, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0828, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
|
||||||
{0x0800, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0800, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x080C, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
{0x080C, 0x00, 0x00, CSIPHY_DNP_PARAMS},
|
||||||
{0x0838, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0838, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -281,7 +278,7 @@ struct csiphy_reg_t
|
|||||||
{0x0808, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
{0x0808, 0x10, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0810, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0810, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x085C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
{0x085C, 0x00, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0860, 0xF1, 0x00, CSIPHY_SKEW_CAL},
|
{0x0860, 0xFD, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x0864, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
{0x0864, 0x7F, 0x00, CSIPHY_SKEW_CAL},
|
||||||
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
@@ -292,7 +289,6 @@ struct csiphy_reg_t
|
|||||||
{0x0C98, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0C98, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0C94, 0x07, 0x01, CSIPHY_DEFAULT_PARAMS},
|
{0x0C94, 0x07, 0x01, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0C30, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0C30, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0C28, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0C00, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0C00, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0C0C, 0xFF, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0C0C, 0xFF, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0C38, 0x1F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0C38, 0x1F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -320,16 +316,16 @@ struct csiphy_reg_t csiphy_3ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x02F8, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x02F8, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x02FC, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x02FC, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x02F0, 0xEF, 0x03, CSIPHY_DEFAULT_PARAMS},
|
{0x02F0, 0xEF, 0x03, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0324, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0294, 0x0D, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0294, 0x0D, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0278, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0278, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0268, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0290, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x026C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0268, 0xA1, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0204, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x026C, 0x12, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0204, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x020C, 0x06, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE},
|
{0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE},
|
||||||
{0x0214, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0214, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0260, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0260, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0240, 0x80, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x02E4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x02E4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x02E8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x02E8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x02EC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x02EC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -339,10 +335,15 @@ struct csiphy_reg_t csiphy_3ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0224, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0224, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0228, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0228, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x022C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x022C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0264, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0264, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0244, 0x32, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0244, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0310, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0310, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x025C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x025C, 0xC2, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x02BC, 0xD0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0288, 0xC5, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x028C, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0274, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x1000, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -351,16 +352,16 @@ struct csiphy_reg_t csiphy_3ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x06F8, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x06F8, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x06FC, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x06FC, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x06F0, 0xEF, 0x03, CSIPHY_DEFAULT_PARAMS},
|
{0x06F0, 0xEF, 0x03, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0724, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0694, 0x0D, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0694, 0x0D, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0678, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0678, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0668, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0690, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x066C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0668, 0xA1, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0604, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x066C, 0x12, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0604, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x060C, 0x06, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE},
|
{0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE},
|
||||||
{0x0614, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0614, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0660, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0660, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0640, 0x80, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x06E4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x06E4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x06E8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x06E8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x06EC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x06EC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -370,10 +371,15 @@ struct csiphy_reg_t csiphy_3ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0624, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0624, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0628, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0628, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x062C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x062C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0664, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0664, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0644, 0x32, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0644, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0710, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0710, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x065C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x065C, 0xC2, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x06BC, 0xD0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0688, 0xC5, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x068C, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0674, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x1000, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -382,16 +388,16 @@ struct csiphy_reg_t csiphy_3ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0AF8, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0AF8, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0AFC, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0AFC, 0x1A, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0AF0, 0xEF, 0x03, CSIPHY_DEFAULT_PARAMS},
|
{0x0AF0, 0xEF, 0x03, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0B24, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0A94, 0x0D, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A94, 0x0D, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A78, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A78, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A68, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A90, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A6C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A68, 0xA1, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A04, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A6C, 0x12, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0A04, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0A0C, 0x06, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
||||||
{0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE},
|
{0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE},
|
||||||
{0x0A14, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A14, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A60, 0x50, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A60, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A40, 0x80, 0x00, CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0AE4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0AE4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0AE8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0AE8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0AEC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0AEC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
@@ -401,120 +407,17 @@ struct csiphy_reg_t csiphy_3ph_v2_1_0_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
|
|||||||
{0x0A24, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A24, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A28, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A28, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A2C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A2C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A64, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A64, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A44, 0x32, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A44, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0B10, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0B10, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x0A5C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x0A5C, 0xC2, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0ABC, 0xD0, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0A88, 0xC5, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0A8C, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
|
{0x0A74, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
{0x1000, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
|
{0x1000, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
struct data_rate_settings_t data_rate_delta_table_2_1_0 = {
|
|
||||||
.num_data_rate_settings = 3,
|
|
||||||
.data_rate_settings = {
|
|
||||||
{
|
|
||||||
/* (2.5 * 10**3 * 2.28) rounded value*/
|
|
||||||
.bandwidth = 5700000000,
|
|
||||||
.data_rate_reg_array_size = 2,
|
|
||||||
.per_lane_info = {
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_0,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0290, 0x02, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x020C, 0x03, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_1,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0690, 0x02, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x060C, 0x03, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_2,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0A90, 0x02, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0A0C, 0x03, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
/* (4.5 * 10**3 * 2.28) rounded value */
|
|
||||||
.bandwidth = 10260000000,
|
|
||||||
.data_rate_reg_array_size = 2,
|
|
||||||
.per_lane_info = {
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_0,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0290, 0x03, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x020C, 0x03, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_1,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0690, 0x03, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x060C, 0x03, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_2,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0A90, 0x03, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0A0C, 0x03, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
/* (6.5 * 10**3 * 2.28) rounded value */
|
|
||||||
.bandwidth = 14820000000,
|
|
||||||
.data_rate_reg_array_size = 2,
|
|
||||||
.per_lane_info = {
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_0,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0290, 0x03, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x020C, 0x07, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_1,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0690, 0x03, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x060C, 0x07, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
.lane_identifier = CPHY_LANE_2,
|
|
||||||
.csiphy_data_rate_regs = {
|
|
||||||
{0x0A90, 0x03, 0x00,
|
|
||||||
CSIPHY_DEFAULT_PARAMS},
|
|
||||||
{0x0A0C, 0x07, 0x00,
|
|
||||||
CSIPHY_SETTLE_CNT_LOWER_BYTE},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
#endif /* _CAM_CSIPHY_2_1_0_HWREG_H_ */
|
#endif /* _CAM_CSIPHY_2_1_0_HWREG_H_ */
|
Reference in New Issue
Block a user