When TC358840 outputs 4K images on Jetson Xavier Nx, the left and right are reversed

Hi.
I have encountered a problem. When I debug tc358840 on Xavier Nx, the left and right positions of the output video are reversed. I don’t know how to configure it. The following is the record of the problems encountered during debugging:

Please Help Me.I don’t known where the problem is…
Thanks !

Does it 4 lanes configure?
How about others mode like 1080p?

Thanks Shane.
Yes.This is my configure file.
tegra194-xavier-tc358840.dtsi (6.1 KB)
1080P is normal.

I would suspect it could be the tc358840 driver configuration issue.
However, I don’t familiar to tc358840 driver to give advice.

Thanks

1 Like

Hi.Shane.Thank you very much for your support. By checking the data sheet of 840, the problem has been solved. Here I will share with you my solution:

static void tc358840_set_splitter(struct v4l2_subdev *sd)
{
	struct tc358840_state *state = to_state(sd);

	v4l2_dbg(3, debug, sd, "function %s():\n", __func__);

	if (state->timings.bt.width <= 1920) {
		i2c_wr16_and_or(sd, SPLITTX0_CTRL, ~(MASK_IFEN | MASK_LCD_CSEL),
				MASK_SPBP);
		i2c_wr16_and_or(sd, SPLITTX1_CTRL, ~(MASK_IFEN | MASK_LCD_CSEL),
				MASK_SPBP);

		i2c_wr16_and_or(sd, SPLITTX0_SPLIT, (u16)(0x0000ffff &
							  ~(MASK_TX1SEL |
							    MASK_EHW)), 0);
	} else {
		i2c_wr16_and_or(sd, SPLITTX0_CTRL, ~(MASK_IFEN | MASK_LCD_CSEL | MASK_SPBP), 0);
		i2c_wr16_and_or(sd, SPLITTX1_CTRL, ~(MASK_IFEN | MASK_LCD_CSEL | MASK_SPBP), 0);

//		i2c_wr16_and_or(sd, SPLITTX0_SPLIT, ~(MASK_TX1SEL), MASK_EHW);
		i2c_wr16_and_or(sd, SPLITTX0_SPLIT, (u16)(0x0000ffff &
							  ~(MASK_TX1SEL |
							    MASK_EHW)), (MASK_TX1SEL |
							    MASK_EHW));
	}
}

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.