From 7d852cc75cf1ca93919132ab098bedf718195f85 Mon Sep 17 00:00:00 2001 From: Wang Kan Date: Wed, 12 Jul 2023 16:00:27 +0800 Subject: [PATCH] msm: camera: csiphy: Add support for SM8750 This change adds bring up sequence header and driver support for SM8750. CRs-Fixed: 3557518 Change-Id: I6daddb5bca67032a5bfd3bc30bbd3d076f8599a4 Signed-off-by: Wang Kan --- .../cam_csiphy/cam_csiphy_soc.c | 10 +- .../cam_csiphy/cam_csiphy_soc.h | 3 +- .../include/cam_csiphy_2_3_0_hwreg.h | 2209 +++++++++++++++++ 3 files changed, 2219 insertions(+), 3 deletions(-) create mode 100644 drivers/cam_sensor_module/cam_csiphy/include/cam_csiphy_2_3_0_hwreg.h diff --git a/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.c b/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.c index e8cc996b18..1037128f48 100644 --- a/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.c +++ b/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.c @@ -11,6 +11,7 @@ #include "include/cam_csiphy_2_1_2_hwreg.h" #include "include/cam_csiphy_2_1_3_hwreg.h" #include "include/cam_csiphy_2_2_0_hwreg.h" +#include "include/cam_csiphy_2_3_0_hwreg.h" /* Clock divide factor for CPHY spec v1.0 */ #define CSIPHY_DIVISOR_16 16 @@ -151,7 +152,7 @@ enum cam_vote_level get_clk_voting_dynamic( do_div(phy_data_rate, CSIPHY_DIVISOR_8); } - /* round off to next integer */ + /* round off to next integer */ phy_data_rate += 1; csiphy_dev->current_data_rate = phy_data_rate; @@ -331,10 +332,15 @@ int32_t cam_csiphy_parse_dt_info(struct platform_device *pdev, csiphy_dev->hw_version = CSIPHY_VERSION_V220; csiphy_dev->is_divisor_32_comp = true; csiphy_dev->clk_lane = 0; + } else if (of_device_is_compatible(soc_info->dev->of_node, "qcom,csiphy-v2.3.0")) { + csiphy_dev->ctrl_reg = &ctrl_reg_2_3_0; + csiphy_dev->hw_version = CSIPHY_VERSION_V230; + csiphy_dev->is_divisor_32_comp = true; + csiphy_dev->clk_lane = 0; } else { CAM_ERR(CAM_CSIPHY, "invalid hw version : 0x%x", csiphy_dev->hw_version); - rc = -EINVAL; + rc = -EINVAL; return rc; } diff --git a/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.h b/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.h index 31dabf125a..f104d601bf 100644 --- a/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.h +++ b/drivers/cam_sensor_module/cam_csiphy/cam_csiphy_soc.h @@ -1,7 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (c) 2017-2021, The Linux Foundation. All rights reserved. - * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved. + * Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved. */ #ifndef _CAM_CSIPHY_SOC_H_ @@ -36,6 +36,7 @@ #define CSIPHY_VERSION_V212 0x212 #define CSIPHY_VERSION_V213 0x213 #define CSIPHY_VERSION_V220 0x220 +#define CSIPHY_VERSION_V230 0x230 /** * @csiphy_dev: CSIPhy device structure diff --git a/drivers/cam_sensor_module/cam_csiphy/include/cam_csiphy_2_3_0_hwreg.h b/drivers/cam_sensor_module/cam_csiphy/include/cam_csiphy_2_3_0_hwreg.h new file mode 100644 index 0000000000..91c2432362 --- /dev/null +++ b/drivers/cam_sensor_module/cam_csiphy/include/cam_csiphy_2_3_0_hwreg.h @@ -0,0 +1,2209 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/* + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. + */ + +#ifndef _CAM_CSIPHY_2_3_0_HWREG_H_ +#define _CAM_CSIPHY_2_3_0_HWREG_H_ + +#include "../cam_csiphy_dev.h" + +struct cam_csiphy_aon_sel_params_t aon_cam_select_params_2_3_0 = { + .aon_cam_sel_offset[0] = 0x01E0, + .aon_cam_sel_offset[1] = 0x01E4, + .cam_sel_mask = BIT(0), + .mclk_sel_mask = BIT(8), +}; + +struct cam_cphy_dphy_status_reg_params_t status_regs_2_3_0 = { + .csiphy_3ph_status0_offset = 0x0340, + .csiphy_2ph_status0_offset = 0x00C0, + .cphy_lane_status = {0x0358, 0x0758, 0x0B58}, + .csiphy_3ph_status_size = 24, + .csiphy_2ph_status_size = 20, +}; + +struct csiphy_reg_t csiphy_lane_en_reg_2_3_0[] = { + {0x1014, 0x00, 0x00, CSIPHY_LANE_ENABLE}, +}; + +struct csiphy_reg_t csiphy_common_reg_2_3_0[] = { + {0x1084, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x108C, 0x00, 0x01, CSIPHY_DEFAULT_PARAMS}, + {0x101C, 0x7A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1018, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t csiphy_reset_enter_reg_2_3_0[] = { + {0x1000, 0x01, 0x01, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t csiphy_reset_exit_reg_2_3_0[] = { + {0x1000, 0x02, 0x00, CSIPHY_2PH_REGS}, + {0x1000, 0x00, 0x00, CSIPHY_2PH_COMBO_REGS}, + {0x1000, 0x0E, 0xBE8, CSIPHY_3PH_REGS}, +}; + +struct csiphy_reg_t csiphy_irq_reg_2_3_0[] = { + {0x102c, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1030, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1034, 0xfb, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1038, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x103c, 0x7f, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1040, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1044, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1048, 0xef, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x104c, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1050, 0xff, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x1054, 0xff, 0x64, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t csiphy_2ph_v2_3_0_reg[] = { + {0x0E94, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0EA0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E90, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E98, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E94, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0094, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x00A0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0090, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0098, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0094, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0494, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x04A0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0490, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0498, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0494, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0894, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x08A0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0890, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0898, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0894, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0C94, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0CA0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C90, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C98, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C94, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0E30, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E28, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E00, 0x80, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E0C, 0xFF, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E38, 0x1F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E2C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E34, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E1C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E14, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E3C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E04, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E20, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E08, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0E10, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0030, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0000, 0x8E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0038, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x002C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0034, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x001C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0014, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x003C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0004, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0020, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0008, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0010, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0430, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0400, 0x8E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0438, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x042C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0434, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x041C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0414, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x043C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0404, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0420, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0408, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0410, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0830, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0800, 0x8E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0838, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x082C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0834, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x081C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0814, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x083C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0804, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0820, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0808, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0810, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C30, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C00, 0x8E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C38, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C2C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C34, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C1C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C14, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C3C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C04, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C20, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C08, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0C10, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0094, 0xD7, 0x00, CSIPHY_SKEW_CAL}, + {0x005C, 0x00, 0x00, CSIPHY_SKEW_CAL}, + {0x0060, 0xBD, 0x00, CSIPHY_SKEW_CAL}, + {0x0064, 0x7F, 0x00, CSIPHY_SKEW_CAL}, + {0x0494, 0xD7, 0x00, CSIPHY_SKEW_CAL}, + {0x045C, 0x00, 0x00, CSIPHY_SKEW_CAL}, + {0x0460, 0xBD, 0x00, CSIPHY_SKEW_CAL}, + {0x0464, 0x7F, 0x00, CSIPHY_SKEW_CAL}, + {0x0894, 0xD7, 0x00, CSIPHY_SKEW_CAL}, + {0x085C, 0x00, 0x00, CSIPHY_SKEW_CAL}, + {0x0860, 0xBD, 0x00, CSIPHY_SKEW_CAL}, + {0x0864, 0x7F, 0x00, CSIPHY_SKEW_CAL}, + {0x0C94, 0xD7, 0x00, CSIPHY_SKEW_CAL}, + {0x0C5C, 0x00, 0x00, CSIPHY_SKEW_CAL}, + {0x0C60, 0xBD, 0x00, CSIPHY_SKEW_CAL}, + {0x0C64, 0x7F, 0x00, CSIPHY_SKEW_CAL}, +}; + +struct csiphy_reg_t csiphy_2ph_v2_3_0_combo_mode_reg[] = { + {0x0E94, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0EA0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E90, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E98, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E94, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0094, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x00A0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0090, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0098, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0094, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0494, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x04A0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0490, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0498, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0494, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0894, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x08A0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0890, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0898, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0894, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0C94, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0CA0, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C90, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C98, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C94, 0x07, 0xD1, CSIPHY_DEFAULT_PARAMS}, + {0x0E30, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E28, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E00, 0x80, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E0C, 0xFF, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E38, 0x1F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E2C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E34, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E1C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E14, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E3C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E04, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E20, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0E08, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0E10, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0030, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0000, 0x8E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0038, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x002C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0034, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x001C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0014, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x003C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0004, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0020, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0008, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0010, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0430, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0400, 0x8E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0438, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x042C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0434, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x041C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0414, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x043C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0404, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0420, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0408, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0410, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0830, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0800, 0x8E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0838, 0xFE, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0828, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x082C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0834, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x081C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0814, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x083C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0804, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0820, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0808, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0810, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C30, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C28, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C00, 0x80, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C0C, 0xFF, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C38, 0x1F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C28, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C2C, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C34, 0x0F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C1C, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C14, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C3C, 0xB8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C04, 0x0C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C20, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0C08, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0C10, 0x52, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0094, 0xD7, 0x00, CSIPHY_SKEW_CAL}, + {0x005C, 0x00, 0x00, CSIPHY_SKEW_CAL}, + {0x0060, 0xBD, 0x00, CSIPHY_SKEW_CAL}, + {0x0064, 0x7F, 0x00, CSIPHY_SKEW_CAL}, + {0x0494, 0xD7, 0x00, CSIPHY_SKEW_CAL}, + {0x045C, 0x00, 0x00, CSIPHY_SKEW_CAL}, + {0x0460, 0xBD, 0x00, CSIPHY_SKEW_CAL}, + {0x0464, 0x7F, 0x00, CSIPHY_SKEW_CAL}, + {0x0894, 0xD7, 0x00, CSIPHY_SKEW_CAL}, + {0x085C, 0x00, 0x00, CSIPHY_SKEW_CAL}, + {0x0860, 0xBD, 0x00, CSIPHY_SKEW_CAL}, + {0x0864, 0x7F, 0x00, CSIPHY_SKEW_CAL}, +}; + +struct csiphy_reg_t csiphy_3ph_v2_3_0_reg[] = { + {0x02F4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02F8, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02FC, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02F0, 0xEF, 0xD3, CSIPHY_DEFAULT_PARAMS}, + {0x06F4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06F8, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06FC, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06F0, 0xEF, 0xD3, CSIPHY_DEFAULT_PARAMS}, + {0x0AF4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AF8, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AFC, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AF0, 0xEF, 0xD3, CSIPHY_DEFAULT_PARAMS}, + {0x0204, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02E4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02E8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02EC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0218, 0x3E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x021C, 0x41, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0220, 0x41, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0224, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0228, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x022C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0264, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0244, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0310, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02BC, 0xD0, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0254, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0240, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0260, 0xA8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0284, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0290, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0604, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06E4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06E8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06EC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0618, 0x3E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x061C, 0x41, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0620, 0x41, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0624, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0628, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x062C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0664, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0644, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0710, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06BC, 0xD0, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0654, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0640, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0660, 0xA8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0684, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0690, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A04, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AE4, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AE8, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AEC, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A18, 0x3E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A1C, 0x41, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A20, 0x41, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A24, 0x7F, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A28, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A2C, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A64, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A44, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0B10, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0ABC, 0xD0, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A54, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A40, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A60, 0xA8, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A84, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A90, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_80Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x1F, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x02, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x6B, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x1F, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x02, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x6B, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x1F, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x02, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x6B, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_100Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x00, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x00, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0xB6, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x01, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x6B, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0xB6, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x01, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x6B, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0xB6, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x01, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x6B, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_200Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0xE4, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x33, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0xE4, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x33, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0xE4, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x33, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_300Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x9E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x9E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x9E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_350Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x8A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x8A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x8A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_400Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x7B, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x7B, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x7B, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_500Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x08, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x01, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x66, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x66, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x66, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_600Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x58, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x58, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x58, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_700Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x4E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x4E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x4E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_800Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x46, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x46, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x46, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_900Msps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x40, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x40, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x40, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_1p0Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x0A, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x12, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x22, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x0A, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x3C, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x3C, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x3C, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_1p2Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x35, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x35, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x35, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_1p5Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x2E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x2E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x2E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_1p7Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x2A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x2A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x2A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x09, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_2p0Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x27, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x27, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x27, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_2p1Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x26, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x26, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x26, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_2p35Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x23, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x23, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x23, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_2p5Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x1C, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x42, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x3C, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x22, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x22, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x22, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_2p6Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x22, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x22, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x22, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_2p8Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x21, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x21, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x21, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_3p0Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x20, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x20, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x20, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_3p3Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x1E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x1E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x1E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_3p5Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x1E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x1E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x1E, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_4p0Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_STANDARD_CHANNEL_PARAMS}, + /* Datarate Sensitive */ + {0x020C, 0x1C, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x1C, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x1C, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_4p5Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x26, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x64, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0F, 0x00, CSIPHY_CDR_LN_SETTINGS}, + /* Datarate Sensitive */ + {0x020C, 0x1B, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x1B, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x1B, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_5p0Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + /* Datarate Sensitive */ + {0x020C, 0x1A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x1A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x1A, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_5p5Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + /* Datarate Sensitive */ + {0x020C, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t datarate_230_6p0Gsps[] = { + /* AFE Settings */ + {0x0268, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0288, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x026C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x026C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x028C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x028C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0294, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0270, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0274, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0278, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0668, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0688, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x066C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x066C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x068C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x068C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0694, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0670, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0674, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0678, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A68, 0xF1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A88, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A6C, 0x36, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A6C, 0x36, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A8C, 0x66, 0x00, CSIPHY_SHORT_CHANNEL_PARAMS}, + {0x0A8C, 0x66, 0x00, CSIPHY_STANDARD_CHANNEL_PARAMS}, + {0x0A94, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A70, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A74, 0x00, 0x0A, CSIPHY_DEFAULT_PARAMS}, + {0x0A78, 0x0A, 0x00, CSIPHY_CDR_LN_SETTINGS | CSIPHY_SHORT_CHANNEL_PARAMS}, + /* Datarate Sensitive */ + {0x020C, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0208, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0210, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0214, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x060C, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0608, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0610, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0614, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A0C, 0x19, 0x00, CSIPHY_SETTLE_CNT_LOWER_BYTE}, + {0x0A08, 0x00, 0x00, CSIPHY_SETTLE_CNT_HIGHER_BYTE}, + {0x0A10, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A14, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +static struct data_rate_reg_info_t data_rate_settings_2_3_0[] = { + { + /* ((80 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 182400000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_80Msps), + .data_rate_reg_array[0][0] = datarate_230_80Msps, + .data_rate_reg_array[1][0] = datarate_230_80Msps, + .data_rate_reg_array[2][0] = datarate_230_80Msps, + .data_rate_reg_array[3][0] = datarate_230_80Msps, + .data_rate_reg_array[4][0] = datarate_230_80Msps, + .data_rate_reg_array[5][0] = datarate_230_80Msps, + .data_rate_reg_array[6][0] = datarate_230_80Msps, + .data_rate_reg_array[7][0] = datarate_230_80Msps, + }, + { + /* ((100 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 228000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_100Msps), + .data_rate_reg_array[0][0] = datarate_230_100Msps, + .data_rate_reg_array[1][0] = datarate_230_100Msps, + .data_rate_reg_array[2][0] = datarate_230_100Msps, + .data_rate_reg_array[3][0] = datarate_230_100Msps, + .data_rate_reg_array[4][0] = datarate_230_100Msps, + .data_rate_reg_array[5][0] = datarate_230_100Msps, + .data_rate_reg_array[6][0] = datarate_230_100Msps, + .data_rate_reg_array[7][0] = datarate_230_100Msps, + }, + { + /* ((200 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 456000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_200Msps), + .data_rate_reg_array[0][0] = datarate_230_200Msps, + .data_rate_reg_array[1][0] = datarate_230_200Msps, + .data_rate_reg_array[2][0] = datarate_230_200Msps, + .data_rate_reg_array[3][0] = datarate_230_200Msps, + .data_rate_reg_array[4][0] = datarate_230_200Msps, + .data_rate_reg_array[5][0] = datarate_230_200Msps, + .data_rate_reg_array[6][0] = datarate_230_200Msps, + .data_rate_reg_array[7][0] = datarate_230_200Msps, + }, + { + /* ((300 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 684000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_300Msps), + .data_rate_reg_array[0][0] = datarate_230_300Msps, + .data_rate_reg_array[1][0] = datarate_230_300Msps, + .data_rate_reg_array[2][0] = datarate_230_300Msps, + .data_rate_reg_array[3][0] = datarate_230_300Msps, + .data_rate_reg_array[4][0] = datarate_230_300Msps, + .data_rate_reg_array[5][0] = datarate_230_300Msps, + .data_rate_reg_array[6][0] = datarate_230_300Msps, + .data_rate_reg_array[7][0] = datarate_230_300Msps, + }, + { + /* ((350 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 798000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_350Msps), + .data_rate_reg_array[0][0] = datarate_230_350Msps, + .data_rate_reg_array[1][0] = datarate_230_350Msps, + .data_rate_reg_array[2][0] = datarate_230_350Msps, + .data_rate_reg_array[3][0] = datarate_230_350Msps, + .data_rate_reg_array[4][0] = datarate_230_350Msps, + .data_rate_reg_array[5][0] = datarate_230_350Msps, + .data_rate_reg_array[6][0] = datarate_230_350Msps, + .data_rate_reg_array[7][0] = datarate_230_350Msps, + }, + { + /* ((400 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 912000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_400Msps), + .data_rate_reg_array[0][0] = datarate_230_400Msps, + .data_rate_reg_array[1][0] = datarate_230_400Msps, + .data_rate_reg_array[2][0] = datarate_230_400Msps, + .data_rate_reg_array[3][0] = datarate_230_400Msps, + .data_rate_reg_array[4][0] = datarate_230_400Msps, + .data_rate_reg_array[5][0] = datarate_230_400Msps, + .data_rate_reg_array[6][0] = datarate_230_400Msps, + .data_rate_reg_array[7][0] = datarate_230_400Msps, + }, + { + /* ((500 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 1140000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_500Msps), + .data_rate_reg_array[0][0] = datarate_230_500Msps, + .data_rate_reg_array[1][0] = datarate_230_500Msps, + .data_rate_reg_array[2][0] = datarate_230_500Msps, + .data_rate_reg_array[3][0] = datarate_230_500Msps, + .data_rate_reg_array[4][0] = datarate_230_500Msps, + .data_rate_reg_array[5][0] = datarate_230_500Msps, + .data_rate_reg_array[6][0] = datarate_230_500Msps, + .data_rate_reg_array[7][0] = datarate_230_500Msps, + }, + { + /* ((600 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 1368000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_600Msps), + .data_rate_reg_array[0][0] = datarate_230_600Msps, + .data_rate_reg_array[1][0] = datarate_230_600Msps, + .data_rate_reg_array[2][0] = datarate_230_600Msps, + .data_rate_reg_array[3][0] = datarate_230_600Msps, + .data_rate_reg_array[4][0] = datarate_230_600Msps, + .data_rate_reg_array[5][0] = datarate_230_600Msps, + .data_rate_reg_array[6][0] = datarate_230_600Msps, + .data_rate_reg_array[7][0] = datarate_230_600Msps, + }, + { + /* ((700 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 1596000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_700Msps), + .data_rate_reg_array[0][0] = datarate_230_700Msps, + .data_rate_reg_array[1][0] = datarate_230_700Msps, + .data_rate_reg_array[2][0] = datarate_230_700Msps, + .data_rate_reg_array[3][0] = datarate_230_700Msps, + .data_rate_reg_array[4][0] = datarate_230_700Msps, + .data_rate_reg_array[5][0] = datarate_230_700Msps, + .data_rate_reg_array[6][0] = datarate_230_700Msps, + .data_rate_reg_array[7][0] = datarate_230_700Msps, + }, + { + /* ((800 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 1824000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_800Msps), + .data_rate_reg_array[0][0] = datarate_230_800Msps, + .data_rate_reg_array[1][0] = datarate_230_800Msps, + .data_rate_reg_array[2][0] = datarate_230_800Msps, + .data_rate_reg_array[3][0] = datarate_230_800Msps, + .data_rate_reg_array[4][0] = datarate_230_800Msps, + .data_rate_reg_array[5][0] = datarate_230_800Msps, + .data_rate_reg_array[6][0] = datarate_230_800Msps, + .data_rate_reg_array[7][0] = datarate_230_800Msps, + }, + { + /* ((900 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 2052000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_900Msps), + .data_rate_reg_array[0][0] = datarate_230_900Msps, + .data_rate_reg_array[1][0] = datarate_230_900Msps, + .data_rate_reg_array[2][0] = datarate_230_900Msps, + .data_rate_reg_array[3][0] = datarate_230_900Msps, + .data_rate_reg_array[4][0] = datarate_230_900Msps, + .data_rate_reg_array[5][0] = datarate_230_900Msps, + .data_rate_reg_array[6][0] = datarate_230_900Msps, + .data_rate_reg_array[7][0] = datarate_230_900Msps, + }, + { + /* ((1000 MSpS) * (10^6) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 2280000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_1p0Gsps), + .data_rate_reg_array[0][0] = datarate_230_1p0Gsps, + .data_rate_reg_array[1][0] = datarate_230_1p0Gsps, + .data_rate_reg_array[2][0] = datarate_230_1p0Gsps, + .data_rate_reg_array[3][0] = datarate_230_1p0Gsps, + .data_rate_reg_array[4][0] = datarate_230_1p0Gsps, + .data_rate_reg_array[5][0] = datarate_230_1p0Gsps, + .data_rate_reg_array[6][0] = datarate_230_1p0Gsps, + .data_rate_reg_array[7][0] = datarate_230_1p0Gsps, + }, + { + /* ((1.2 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 2736000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_1p2Gsps), + .data_rate_reg_array[0][0] = datarate_230_1p2Gsps, + .data_rate_reg_array[1][0] = datarate_230_1p2Gsps, + .data_rate_reg_array[2][0] = datarate_230_1p2Gsps, + .data_rate_reg_array[3][0] = datarate_230_1p2Gsps, + .data_rate_reg_array[4][0] = datarate_230_1p2Gsps, + .data_rate_reg_array[5][0] = datarate_230_1p2Gsps, + .data_rate_reg_array[6][0] = datarate_230_1p2Gsps, + .data_rate_reg_array[7][0] = datarate_230_1p2Gsps, + }, + { + /* ((1.5 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 3420000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_1p5Gsps), + .data_rate_reg_array[0][0] = datarate_230_1p5Gsps, + .data_rate_reg_array[1][0] = datarate_230_1p5Gsps, + .data_rate_reg_array[2][0] = datarate_230_1p5Gsps, + .data_rate_reg_array[3][0] = datarate_230_1p5Gsps, + .data_rate_reg_array[4][0] = datarate_230_1p5Gsps, + .data_rate_reg_array[5][0] = datarate_230_1p5Gsps, + .data_rate_reg_array[6][0] = datarate_230_1p5Gsps, + .data_rate_reg_array[7][0] = datarate_230_1p5Gsps, + }, + { + /* ((1.7 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 3876000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_1p7Gsps), + .data_rate_reg_array[0][0] = datarate_230_1p7Gsps, + .data_rate_reg_array[1][0] = datarate_230_1p7Gsps, + .data_rate_reg_array[2][0] = datarate_230_1p7Gsps, + .data_rate_reg_array[3][0] = datarate_230_1p7Gsps, + .data_rate_reg_array[4][0] = datarate_230_1p7Gsps, + .data_rate_reg_array[5][0] = datarate_230_1p7Gsps, + .data_rate_reg_array[6][0] = datarate_230_1p7Gsps, + .data_rate_reg_array[7][0] = datarate_230_1p7Gsps, + }, + { + /* ((2.0 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 4560000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_2p0Gsps), + .data_rate_reg_array[0][0] = datarate_230_2p0Gsps, + .data_rate_reg_array[1][0] = datarate_230_2p0Gsps, + .data_rate_reg_array[2][0] = datarate_230_2p0Gsps, + .data_rate_reg_array[3][0] = datarate_230_2p0Gsps, + .data_rate_reg_array[4][0] = datarate_230_2p0Gsps, + .data_rate_reg_array[5][0] = datarate_230_2p0Gsps, + .data_rate_reg_array[6][0] = datarate_230_2p0Gsps, + .data_rate_reg_array[7][0] = datarate_230_2p0Gsps, + }, + { + /* ((2.1 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 4788000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_2p1Gsps), + .data_rate_reg_array[0][0] = datarate_230_2p1Gsps, + .data_rate_reg_array[1][0] = datarate_230_2p1Gsps, + .data_rate_reg_array[2][0] = datarate_230_2p1Gsps, + .data_rate_reg_array[3][0] = datarate_230_2p1Gsps, + .data_rate_reg_array[4][0] = datarate_230_2p1Gsps, + .data_rate_reg_array[5][0] = datarate_230_2p1Gsps, + .data_rate_reg_array[6][0] = datarate_230_2p1Gsps, + .data_rate_reg_array[7][0] = datarate_230_2p1Gsps, + }, + { + /* ((2.35 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 5358000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_2p35Gsps), + .data_rate_reg_array[0][0] = datarate_230_2p35Gsps, + .data_rate_reg_array[1][0] = datarate_230_2p35Gsps, + .data_rate_reg_array[2][0] = datarate_230_2p35Gsps, + .data_rate_reg_array[3][0] = datarate_230_2p35Gsps, + .data_rate_reg_array[4][0] = datarate_230_2p35Gsps, + .data_rate_reg_array[5][0] = datarate_230_2p35Gsps, + .data_rate_reg_array[6][0] = datarate_230_2p35Gsps, + .data_rate_reg_array[7][0] = datarate_230_2p35Gsps, + }, + { + /* ((2.5 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 5700000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_2p5Gsps), + .data_rate_reg_array[0][0] = datarate_230_2p5Gsps, + .data_rate_reg_array[1][0] = datarate_230_2p5Gsps, + .data_rate_reg_array[2][0] = datarate_230_2p5Gsps, + .data_rate_reg_array[3][0] = datarate_230_2p5Gsps, + .data_rate_reg_array[4][0] = datarate_230_2p5Gsps, + .data_rate_reg_array[5][0] = datarate_230_2p5Gsps, + .data_rate_reg_array[6][0] = datarate_230_2p5Gsps, + .data_rate_reg_array[7][0] = datarate_230_2p5Gsps, + }, + { + /* ((2.6 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 5928000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_2p6Gsps), + .data_rate_reg_array[0][0] = datarate_230_2p6Gsps, + .data_rate_reg_array[1][0] = datarate_230_2p6Gsps, + .data_rate_reg_array[2][0] = datarate_230_2p6Gsps, + .data_rate_reg_array[3][0] = datarate_230_2p6Gsps, + .data_rate_reg_array[4][0] = datarate_230_2p6Gsps, + .data_rate_reg_array[5][0] = datarate_230_2p6Gsps, + .data_rate_reg_array[6][0] = datarate_230_2p6Gsps, + .data_rate_reg_array[7][0] = datarate_230_2p6Gsps, + }, + { + /* ((2.8 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 6384000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_2p8Gsps), + .data_rate_reg_array[0][0] = datarate_230_2p8Gsps, + .data_rate_reg_array[1][0] = datarate_230_2p8Gsps, + .data_rate_reg_array[2][0] = datarate_230_2p8Gsps, + .data_rate_reg_array[3][0] = datarate_230_2p8Gsps, + .data_rate_reg_array[4][0] = datarate_230_2p8Gsps, + .data_rate_reg_array[5][0] = datarate_230_2p8Gsps, + .data_rate_reg_array[6][0] = datarate_230_2p8Gsps, + .data_rate_reg_array[7][0] = datarate_230_2p8Gsps, + }, + { + /* ((3.0 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 6840000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_3p0Gsps), + .data_rate_reg_array[0][0] = datarate_230_3p0Gsps, + .data_rate_reg_array[1][0] = datarate_230_3p0Gsps, + .data_rate_reg_array[2][0] = datarate_230_3p0Gsps, + .data_rate_reg_array[3][0] = datarate_230_3p0Gsps, + .data_rate_reg_array[4][0] = datarate_230_3p0Gsps, + .data_rate_reg_array[5][0] = datarate_230_3p0Gsps, + .data_rate_reg_array[6][0] = datarate_230_3p0Gsps, + .data_rate_reg_array[7][0] = datarate_230_3p0Gsps, + }, + { + /* ((3.3 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 7524000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_3p3Gsps), + .data_rate_reg_array[0][0] = datarate_230_3p3Gsps, + .data_rate_reg_array[1][0] = datarate_230_3p3Gsps, + .data_rate_reg_array[2][0] = datarate_230_3p3Gsps, + .data_rate_reg_array[3][0] = datarate_230_3p3Gsps, + .data_rate_reg_array[4][0] = datarate_230_3p3Gsps, + .data_rate_reg_array[5][0] = datarate_230_3p3Gsps, + .data_rate_reg_array[6][0] = datarate_230_3p3Gsps, + .data_rate_reg_array[7][0] = datarate_230_3p3Gsps, + }, + { + /* ((3.5 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 7980000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_3p5Gsps), + .data_rate_reg_array[0][0] = datarate_230_3p5Gsps, + .data_rate_reg_array[1][0] = datarate_230_3p5Gsps, + .data_rate_reg_array[2][0] = datarate_230_3p5Gsps, + .data_rate_reg_array[3][0] = datarate_230_3p5Gsps, + .data_rate_reg_array[4][0] = datarate_230_3p5Gsps, + .data_rate_reg_array[5][0] = datarate_230_3p5Gsps, + .data_rate_reg_array[6][0] = datarate_230_3p5Gsps, + .data_rate_reg_array[7][0] = datarate_230_3p5Gsps, + }, + { + /* ((4.0 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 9120000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_4p0Gsps), + .data_rate_reg_array[0][0] = datarate_230_4p0Gsps, + .data_rate_reg_array[1][0] = datarate_230_4p0Gsps, + .data_rate_reg_array[2][0] = datarate_230_4p0Gsps, + .data_rate_reg_array[3][0] = datarate_230_4p0Gsps, + .data_rate_reg_array[4][0] = datarate_230_4p0Gsps, + .data_rate_reg_array[5][0] = datarate_230_4p0Gsps, + .data_rate_reg_array[6][0] = datarate_230_4p0Gsps, + .data_rate_reg_array[7][0] = datarate_230_4p0Gsps, + }, + { + /* ((4.5 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 10260000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_4p5Gsps), + .data_rate_reg_array[0][0] = datarate_230_4p5Gsps, + .data_rate_reg_array[1][0] = datarate_230_4p5Gsps, + .data_rate_reg_array[2][0] = datarate_230_4p5Gsps, + .data_rate_reg_array[3][0] = datarate_230_4p5Gsps, + .data_rate_reg_array[4][0] = datarate_230_4p5Gsps, + .data_rate_reg_array[5][0] = datarate_230_4p5Gsps, + .data_rate_reg_array[6][0] = datarate_230_4p5Gsps, + .data_rate_reg_array[7][0] = datarate_230_4p5Gsps, + }, + { + /* ((5.0 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 11400000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_5p0Gsps), + .data_rate_reg_array[0][0] = datarate_230_5p0Gsps, + .data_rate_reg_array[1][0] = datarate_230_5p0Gsps, + .data_rate_reg_array[2][0] = datarate_230_5p0Gsps, + .data_rate_reg_array[3][0] = datarate_230_5p0Gsps, + .data_rate_reg_array[4][0] = datarate_230_5p0Gsps, + .data_rate_reg_array[5][0] = datarate_230_5p0Gsps, + .data_rate_reg_array[6][0] = datarate_230_5p0Gsps, + .data_rate_reg_array[7][0] = datarate_230_5p0Gsps, + }, + { + /* ((5.5 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 12540000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_5p5Gsps), + .data_rate_reg_array[0][0] = datarate_230_5p5Gsps, + .data_rate_reg_array[1][0] = datarate_230_5p5Gsps, + .data_rate_reg_array[2][0] = datarate_230_5p5Gsps, + .data_rate_reg_array[3][0] = datarate_230_5p5Gsps, + .data_rate_reg_array[4][0] = datarate_230_5p5Gsps, + .data_rate_reg_array[5][0] = datarate_230_5p5Gsps, + .data_rate_reg_array[6][0] = datarate_230_5p5Gsps, + .data_rate_reg_array[7][0] = datarate_230_5p5Gsps, + }, + { + /* ((6.0 GSpS) * (10^9) * (2.28 bits/symbol)) rounded value */ + .bandwidth = 13680000000, + .data_rate_reg_array_size = ARRAY_SIZE(datarate_230_6p0Gsps), + .data_rate_reg_array[0][0] = datarate_230_6p0Gsps, + .data_rate_reg_array[1][0] = datarate_230_6p0Gsps, + .data_rate_reg_array[2][0] = datarate_230_6p0Gsps, + .data_rate_reg_array[3][0] = datarate_230_6p0Gsps, + .data_rate_reg_array[4][0] = datarate_230_6p0Gsps, + .data_rate_reg_array[5][0] = datarate_230_6p0Gsps, + .data_rate_reg_array[6][0] = datarate_230_6p0Gsps, + .data_rate_reg_array[7][0] = datarate_230_6p0Gsps, + }, +}; + +struct csiphy_reg_t bist_3ph_arr_2_3_0[] = { + {0x0230, 0x1C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0234, 0xFA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0238, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x023C, 0x59, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0258, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02C8, 0xAA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02D0, 0xAA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02D4, 0x64, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x02D8, 0x3E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0248, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x024C, 0x07, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0250, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0244, 0xB1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x025C, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0240, 0x85, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0630, 0x1C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0634, 0xFA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0638, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x063C, 0x59, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0658, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06C8, 0xAA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06D0, 0xAA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06D4, 0x64, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x06D8, 0x3E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0648, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x064C, 0x07, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0650, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0644, 0xB1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x065C, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0640, 0x85, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A30, 0x1C, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A34, 0xFA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A38, 0xD4, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A3C, 0x59, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A58, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AC8, 0xAA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AD0, 0xAA, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AD4, 0x64, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0AD8, 0x3E, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A48, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A4C, 0x07, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A50, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A44, 0xB1, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A5C, 0x04, 0x00, CSIPHY_DEFAULT_PARAMS}, + {0x0A40, 0x85, 0x00, CSIPHY_DEFAULT_PARAMS}, +}; + +struct csiphy_reg_t bist_status_arr_2_3_0[] = { + {0x0344, 0x00, 0x00, CSIPHY_3PH_REGS}, + {0x0744, 0x00, 0x00, CSIPHY_3PH_REGS}, + {0x0B44, 0x00, 0x00, CSIPHY_3PH_REGS}, + {0x00C0, 0x00, 0x00, CSIPHY_2PH_REGS}, + {0x04C0, 0x00, 0x00, CSIPHY_2PH_REGS}, + {0x08C0, 0x00, 0x00, CSIPHY_2PH_REGS}, + {0x0CC0, 0x00, 0x00, CSIPHY_2PH_REGS}, +}; + +struct bist_reg_settings_t bist_setting_2_3_0 = { + .error_status_val_3ph = 0x10, + .error_status_val_2ph = 0x10, + .set_status_update_3ph_base_offset = 0x0240, + .set_status_update_2ph_base_offset = 0x0050, + .bist_status_3ph_base_offset = 0x0344, + .bist_status_2ph_base_offset = 0x00C0, + .bist_sensor_data_3ph_status_base_offset = 0x0340, + .bist_counter_3ph_base_offset = 0x0348, + .bist_counter_2ph_base_offset = 0x00C8, + .number_of_counters = 2, + .num_3ph_bist_settings = ARRAY_SIZE(bist_3ph_arr_2_3_0), + .bist_3ph_settings_arry = bist_3ph_arr_2_3_0, + .bist_2ph_settings_arry = NULL, + .num_2ph_bist_settings = 0, + .num_status_reg = ARRAY_SIZE(bist_status_arr_2_3_0), + .bist_status_arr = bist_status_arr_2_3_0, +}; + +struct data_rate_settings_t data_rate_delta_table_2_3_0 = { + .num_data_rate_settings = ARRAY_SIZE(data_rate_settings_2_3_0), + .data_rate_settings = data_rate_settings_2_3_0, +}; + +struct csiphy_reg_parms_t csiphy_v2_3_0 = { + .mipi_csiphy_interrupt_status0_addr = 0x10B0, + .mipi_csiphy_interrupt_clear0_addr = 0x1058, + .mipi_csiphy_glbl_irq_cmd_addr = 0x1028, + .size_offset_betn_lanes = 0x400, + .status_reg_params = &status_regs_2_3_0, + .csiphy_common_reg_array_size = ARRAY_SIZE(csiphy_common_reg_2_3_0), + .csiphy_reset_enter_array_size = ARRAY_SIZE(csiphy_reset_enter_reg_2_3_0), + .csiphy_reset_exit_array_size = ARRAY_SIZE(csiphy_reset_exit_reg_2_3_0), + .csiphy_2ph_config_array_size = ARRAY_SIZE(csiphy_2ph_v2_3_0_reg), + .csiphy_3ph_config_array_size = ARRAY_SIZE(csiphy_3ph_v2_3_0_reg), + .csiphy_2ph_combo_config_array_size = ARRAY_SIZE(csiphy_2ph_v2_3_0_combo_mode_reg), + .csiphy_3ph_combo_config_array_size = 0, + .csiphy_2ph_3ph_config_array_size = 0, + .csiphy_interrupt_status_size = ARRAY_SIZE(csiphy_irq_reg_2_3_0), + .csiphy_num_common_status_regs = 20, + .aon_sel_params = &aon_cam_select_params_2_3_0, +}; + +struct csiphy_ctrl_t ctrl_reg_2_3_0 = { + .csiphy_common_reg = csiphy_common_reg_2_3_0, + .csiphy_2ph_reg = csiphy_2ph_v2_3_0_reg, + .csiphy_3ph_reg = csiphy_3ph_v2_3_0_reg, + .csiphy_2ph_combo_mode_reg = csiphy_2ph_v2_3_0_combo_mode_reg, + .csiphy_3ph_combo_reg = NULL, + .csiphy_2ph_3ph_mode_reg = NULL, + .csiphy_reg = &csiphy_v2_3_0, + .csiphy_irq_reg = csiphy_irq_reg_2_3_0, + .csiphy_reset_enter_regs = csiphy_reset_enter_reg_2_3_0, + .csiphy_reset_exit_regs = csiphy_reset_exit_reg_2_3_0, + .csiphy_lane_config_reg = csiphy_lane_en_reg_2_3_0, + .data_rates_settings_table = &data_rate_delta_table_2_3_0, + .csiphy_bist_reg = &bist_setting_2_3_0, + .getclockvoting = get_clk_voting_dynamic, +}; + +#endif /* _CAM_CSIPHY_2_3_0_HWREG_H_ */