rad_default_timing
I modified it,
static const struct display_timing rad_default_timing = {
#if 0
.pixelclock = { 66000000, 132000000, 132000000 },
.hactive = { 1080, 1080, 1080 },
.hfront_porch = { 20, 20, 20 },
.hsync_len = { 2, 2, 2 },
.hback_porch = { 34, 34, 34 },
.vactive = { 1920, 1920, 1920 },
.vfront_porch = { 10, 10, 10 },
.vsync_len = { 2, 2, 2 },
.vback_porch = { 4, 4, 4 },
.flags = DISPLAY_FLAGS_HSYNC_LOW |
DISPLAY_FLAGS_VSYNC_LOW |
DISPLAY_FLAGS_DE_LOW |
DISPLAY_FLAGS_PIXDATA_NEGEDGE,
#else
.pixelclock = { 24000000, 24000000, 24000000 },//Hz : htotal*vtotal*60 = 23 908 800 Hz
.hactive = { 480, 480, 480 },
.hfront_porch = { 50, 50, 50 },
.hsync_len = { 10, 10, 10 },
.hback_porch = { 46, 46, 46 },
.vactive = { 640, 640, 640 },
.vfront_porch = { 15, 15, 15 },
.vsync_len = { 10, 10, 10 },
.vback_porch = { 15, 15, 15 },
.flags = DISPLAY_FLAGS_HSYNC_LOW |
DISPLAY_FLAGS_VSYNC_LOW |
DISPLAY_FLAGS_DE_HIGH|
DISPLAY_FLAGS_PIXDATA_POSEDGE,
#endif
};
and the dts file of rm67191 :
change the lanes,width,height
kernel_imx\arch\arm64\boot\dts\freescale\fsl-imx8mm-evk-rm67191.dts
&mipi_dsi {
panel@0 {
compatible = "raydium,rm67191";
reg = <0>;
pinctrl-0 = <&pinctrl_mipi_dsi_en>;
reset-gpio = <&gpio1 8 GPIO_ACTIVE_HIGH>;
dsi-lanes = <2>;//4,2
video-mode = <2>; /* 0: burst mode
* 1: non-burst mode with sync event
* 2: non-burst mode with sync pulse
*/
panel-width-mm = <37>;//68,37
panel-height-mm = <65>;//121,65
status = "okay";
};
};
but there is something wrong:
[1.710043] imx_sec_dsim_drv 32e10000.mipi_dsi: wait pkthdr tx done time out
[ 1.710051] panel-raydium-rm67191 32e10000.mipi_dsi.0: [drm:rad_panel_enable] *ERROR* Failed to send init cmds (-16)
[ 1.710056] imx_sec_dsim_drv 32e10000.mipi_dsi: panel enable failed: -16
Anywhere I need to modify?