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

Commit 6d4c8529 authored by Shravan Nevatia's avatar Shravan Nevatia Committed by Gerrit - the friendly Code Review server
Browse files

msm: camera: csiphy: Update cphy 3-phase registers for lito



Update register settings for 3-phase cphy operation as per hpg.

CRs-Fixed: 2505587
Change-Id: Ib9392f8055f7b74044edb9634d705b9c92b0ec0d
Signed-off-by: default avatarShravan Nevatia <snevatia@codeaurora.org>
parent c51b7ee4
Loading
Loading
Loading
Loading
+55 −64
Original line number Diff line number Diff line
@@ -12,20 +12,19 @@ struct csiphy_reg_parms_t csiphy_v1_2 = {
	.mipi_csiphy_interrupt_status0_addr = 0x8B0,
	.mipi_csiphy_interrupt_clear0_addr = 0x858,
	.mipi_csiphy_glbl_irq_cmd_addr = 0x828,
	.csiphy_common_array_size = 5,
	.csiphy_common_array_size = 4,
	.csiphy_reset_array_size = 4,
	.csiphy_2ph_config_array_size = 21,
	.csiphy_3ph_config_array_size = 32,
	.csiphy_3ph_config_array_size = 34,
	.csiphy_2ph_clock_lane = 0x1,
	.csiphy_2ph_combo_ck_ln = 0x10,
};

struct csiphy_reg_t csiphy_common_reg_1_2[] = {
	{0x0814, 0xd5, 0x00, CSIPHY_LANE_ENABLE},
	{0x0814, 0x2A, 0x00, CSIPHY_LANE_ENABLE},
	{0x0818, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
	{0x081C, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
	{0x0800, 0x02, 0x00, CSIPHY_DEFAULT_PARAMS},
	{0x081C, 0x52, 0x00, CSIPHY_3PH_REGS},
};

struct csiphy_reg_t csiphy_reset_reg_1_2[] = {
@@ -290,7 +289,7 @@ struct csiphy_reg_t
struct
csiphy_reg_t csiphy_3ph_v1_2_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
	{
		{0x015C, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x015C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0990, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0994, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0998, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
@@ -322,9 +321,11 @@ csiphy_reg_t csiphy_3ph_v1_2_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
		{0x09B0, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0800, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0984, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x09B4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x09AC, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
	},
	{
		{0x035C, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x035C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0A90, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0A94, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0A98, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
@@ -356,9 +357,11 @@ csiphy_reg_t csiphy_3ph_v1_2_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
		{0x0AB0, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0800, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0A84, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0AB4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0AAC, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
	},
	{
		{0x055C, 0x40, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x055C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0B90, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0B94, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0B98, 0x00, 0x00, CSIPHY_DEFAULT_PARAMS},
@@ -390,6 +393,8 @@ csiphy_reg_t csiphy_3ph_v1_2_reg[MAX_LANES][MAX_SETTINGS_PER_LANE] = {
		{0x0BB0, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0800, 0x0E, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0B84, 0x20, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0BB4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
		{0x0BAC, 0x35, 0x00, CSIPHY_DEFAULT_PARAMS},
	},
};

@@ -399,82 +404,68 @@ struct data_rate_settings_t data_rate_delta_table = {
		{
			/* (2.5 * 10**3 * 2.28) rounded value*/
			.bandwidth = 5700000000,
			.data_rate_reg_array_size = 12,
			.data_rate_reg_array_size = 9,
			.csiphy_data_rate_regs = {
				{0x15C, 0x66, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x35C, 0x66, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x55C, 0x66, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x9B4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xAB4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xBB4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x9B4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xAB4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xBB4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x144, 0x22, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x344, 0x22, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x544, 0x22, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x16C, 0xAD, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x36C, 0xAD, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x56C, 0xAD, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x16C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x36C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x56C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
			}
		},
		{
			/* (3.5 * 10**3 * 2.28) rounded value */
			.bandwidth = 7980000000,
			.data_rate_reg_array_size = 24,
			.data_rate_reg_array_size = 18,
			.csiphy_data_rate_regs = {
				{0x15C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x35C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x55C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x9B4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xAB4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xBB4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x9B0, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xAB0, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xBB0, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x144, 0xA2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x344, 0xA2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x544, 0xA2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x13C, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x33C, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x53C, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x140, 0x81, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x340, 0x81, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x540, 0x81, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x168, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x368, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x568, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x16C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x36C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x56C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x144, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x344, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x544, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x16C, 0x2D, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x36C, 0x2D, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x56C, 0x2D, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x988, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x980, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xA88, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xA80, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xB88, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xB80, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x10C, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x30C, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x50C, 0x08, 0x00, CSIPHY_DEFAULT_PARAMS},

			},
		},
		{
			/* (4.5 * 10**3 * 2.28) rounded value */
			.bandwidth = 10260000000,
			.data_rate_reg_array_size = 24,
			.data_rate_reg_array_size = 18,
			.csiphy_data_rate_regs = {
				{0x15C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x35C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x55C, 0x46, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x9B4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xAB4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xBB4, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x9B0, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xAB0, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xBB0, 0x01, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x144, 0xA2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x344, 0xA2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x544, 0xA2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x13C, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x33C, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x53C, 0x10, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x140, 0x81, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x340, 0x81, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x540, 0x81, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x168, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x368, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x568, 0xA0, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x16C, 0x1D, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x36C, 0x1D, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x56C, 0x1D, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x9B4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xAB4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xBB4, 0x03, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x144, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x344, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x544, 0xB2, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x16C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x36C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x56C, 0x25, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x988, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x980, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xA88, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xA80, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xB88, 0x05, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0xB80, 0x60, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x10C, 0x0B, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x30C, 0x0B, 0x00, CSIPHY_DEFAULT_PARAMS},
				{0x50C, 0x0B, 0x00, CSIPHY_DEFAULT_PARAMS},
			},
		}
	}