Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ac8728a9 authored by Camera Software Integration's avatar Camera Software Integration Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: camera: sensor: Add data rate table for holi" into camera-kernel.lnx.4.0

parents 1eccc13e 70e5d8ea
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -446,7 +446,8 @@ int32_t cam_csiphy_parse_dt_info(struct platform_device *pdev,
		csiphy_dev->is_divisor_32_comp = false;
		csiphy_dev->hw_version = CSIPHY_VERSION_V125;
		csiphy_dev->clk_lane = 0;
		csiphy_dev->ctrl_reg->data_rates_settings_table = NULL;
		csiphy_dev->ctrl_reg->data_rates_settings_table =
			&data_rate_delta_table_1_2_5;
	} else if (of_device_is_compatible(soc_info->dev->of_node,
		"qcom,csiphy-v2.0")) {
		csiphy_dev->ctrl_reg->csiphy_2ph_reg = csiphy_2ph_v2_0_reg;
+169 −1
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
 * Copyright (c) 2021, The Linux Foundation. All rights reserved.
 */

#ifndef _CAM_CSIPHY_1_2_5_HWREG_H_
@@ -392,4 +392,172 @@ csiphy_reg_t csiphy_3ph_v1_2_5_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
	},
};

struct data_rate_settings_t data_rate_delta_table_1_2_5 = {
	.num_data_rate_settings = 3,
	.data_rate_settings = {
		{
			/* (2.5 * 10**3 * 2.28) rounded value*/
			.bandwidth = 5700000000,
			.data_rate_reg_array_size = 4,
			.per_lane_info = {
				{
					.lane_identifier = CPHY_LANE_0,
					.csiphy_data_rate_regs = {
						{0x010C, 0x12, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0108, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x144, 0x22, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0x9B4, 0x03, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
				{
					.lane_identifier = CPHY_LANE_1,
					.csiphy_data_rate_regs = {
						{0x030C, 0x12, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0308, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x344, 0x22, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xAB4, 0x03, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
				{
					.lane_identifier = CPHY_LANE_2,
					.csiphy_data_rate_regs = {
						{0x050C, 0x12, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0508, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x544, 0x22, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xBB4, 0x03, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
			},
		},
		{
			/* (3.5 * 10**3 * 2.28) rounded value */
			.bandwidth = 7980000000,
			.data_rate_reg_array_size = 6,
			.per_lane_info = {
				{
					.lane_identifier = CPHY_LANE_0,
					.csiphy_data_rate_regs = {
						{0x010C, 0x08, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0108, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x144, 0xB2, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0x988, 0x05, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0x980, 0x60, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0x9B4, 0x02, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
				{
					.lane_identifier = CPHY_LANE_1,
					.csiphy_data_rate_regs = {
						{0x030C, 0x08, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0308, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x344, 0xB2, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xA88, 0x05, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xA80, 0x60, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xAB4, 0x02, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
				{
					.lane_identifier = CPHY_LANE_2,
					.csiphy_data_rate_regs = {
						{0x050C, 0x08, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0508, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x544, 0xB2, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xB88, 0x05, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xB80, 0x60, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xBB4, 0x02, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
			},
		},
		{
			/* (4.5 * 10**3 * 2.28) rounded value */
			.bandwidth = 10260000000,
			.data_rate_reg_array_size = 6,
			.per_lane_info = {
				{
					.lane_identifier = CPHY_LANE_0,
					.csiphy_data_rate_regs = {
						{0x010C, 0x08, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0108, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x144, 0xB2, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0x988, 0x05, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0x980, 0x60, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0x9B4, 0x01, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
				{
					.lane_identifier = CPHY_LANE_1,
					.csiphy_data_rate_regs = {
						{0x030C, 0x08, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0308, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x344, 0xB2, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xA88, 0x05, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xA80, 0x60, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xAB4, 0x01, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
				{
					.lane_identifier = CPHY_LANE_2,
					.csiphy_data_rate_regs = {
						{0x050C, 0x08, 0x00,
						CSIPHY_SETTLE_CNT_LOWER_BYTE},
						{0x0508, 0x00, 0x00,
						CSIPHY_SETTLE_CNT_HIGHER_BYTE},
						{0x544, 0xB2, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xB88, 0x05, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xB80, 0x60, 0x00,
							CSIPHY_DEFAULT_PARAMS},
						{0xBB4, 0x01, 0x0A,
							CSIPHY_DEFAULT_PARAMS},
					},
				},
			},
		},
	},
};

#endif /* _CAM_CSIPHY_1_2_5_HWREG_H_ */