This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Custom board RGB565 LCD Interface Problem

Part Number: AM625
Other Parts Discussed in Thread: AM62A7

Tool/software:

We have a custom AM625 board driving a RGB LCD in 565 mode.

The first text page it displays is OK - thereafter it seems that half the pixels are missing?

I have modified 'k3-am625-beagleplay.dts' to remove the HDMI and replace it with the following snippets:

	panel {
		compatible = "winstar,wf50fswagdnn0";
		
		port {
			panel_in: endpoint {
				remote-endpoint = <&dpi1_out>;
			};
		};
	};
	
	
&dss {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&dss0_pins_default>;
};

&dss_ports {
	/* VP2: DPI Output */
	port@1 {
		reg = <1>;
		dpi1_out: endpoint {
			remote-endpoint = <&panel_in>;
		};
	};
};

Also added the following to panel-simple.c:

static const struct drm_display_mode winstar_wf50fswagdnn0_mode = {
	.clock = 24750,
	.hdisplay = 800,
	.hsync_start = 800 + 54,
	.hsync_end = 800 + 54 + 2,
	.htotal = 800 + 54 + 2 + 44,
	.vdisplay = 480,
	.vsync_start = 480 + 49,
	.vsync_end = 480 + 49 + 2,
	.vtotal = 480 + 49 + 2 + 22,
	.flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC,
};

static const struct panel_desc winstar_wf50fswagdnn0 = {
	.modes = &winstar_wf50fswagdnn0_mode,
	.num_modes = 1,
	.bpc = 8,
	.size = {
		.width = 152,
		.height = 91,
	},
	.bus_flags = DRM_BUS_FLAG_DE_HIGH |
		     DRM_BUS_FLAG_PIXDATA_SAMPLE_NEGEDGE |
		     DRM_BUS_FLAG_SYNC_SAMPLE_NEGEDGE,
	.bus_format = MEDIA_BUS_FMT_RGB565_1X16,
//	.bus_format = MEDIA_BUS_FMT_RGB888_1X24,
	.connector_type = DRM_MODE_CONNECTOR_DPI,
};

It does not seem to be a synchronization problem as the display is stable - just missing pixels as in the attached Video:

Thanks in advance.