Hi,
I am currently using the i.MX7D Sabre development board and I am trying to interface a Truly display with HX8363 mipi driving controller. For this I am porting the HX8369_wvga driver to the HX8363 as the registers are similar.
The problem is that I keep getting the following error:
mxc_mipi_dsi_samsung 30760000.mipi-dsi: MIPI DSI dispdrv inited!
mxsfb 30730000.lcdif: registered mxc display driver mipi_dsi_samsung
mxc_mipi_dsi_samsung 30760000.mipi-dsi: wait rx done timeout!
mxc_mipi_dsi_samsung 30760000.mipi-dsi: mipi_dsi_pkt_read err:-110, data:0xf4.
The data of 0xF4 is for the basic GETTHXID command.
My lcdif node in the dtsi is as follows:
&lcdif {
/* No need for pinctrl as the mipi pinctrl is dedicated */
display = <&display0>;
disp-dev = "mipi_dsi_samsung";
status = "okay";
display0: display {
bits-per-pixel = <24>;
bus-width = <24>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <34300000>;
hactive = <480>;
vactive = <854>;
hfront-porch = <5>;
hback-porch = <5>;
hsync-len = <5>;
vback-porch = <2>;
vfront-porch = <2>;
vsync-len = <2>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <0>;
};
};
};
};
My mipi_dsi node is as follows:
&mipi_dsi {
dev_id = <0>;
disp_id = <0>;
lcd_panel = "TRULY-TFT3P5581";
resets = <&mipi_dsi_reset>;
status= "okay";
};
/* Setting the reset to dummy to keep the mipi_dsi_samsung silent */
mipi_dsi_reset: mipi-dsi-reset {
compatible = "gpio-reset";
/* GPIO1_2 selected because of unused MKBUS_PWM2 */
reset-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
reset-delay-us = <50>;
#reset-cells = <0>;
};
In the i.mx7 sabresd board there is no reset pin for the MIPI display. Hence I put a dummy gpio pin so that the mipi_dsi_samsung driver does not complain.
In the mxcfb_hx8363 (ported from hx8369) I have the following for fb_videomode:
static struct fb_videomode truly_lcd_modedb[] = { { "TRULY-TFT3P5581", 60, 480, 854, 29154 /* pixclock in pico seconds */, 5, 5, 2, 2, 5, 2, FB_SYNC_OE_LOW_ACT, FB_VMODE_NONINTERLACED, 0, }, };
I am not able to understand what I am doing wrong. Please help me in configuring this.
I have solved the "wait rx done timeout!" by reworking the board to control the RESET line using a GPIO. In this way I was able the get the ID. There are still problems with the display which is all settings related and I will update this thread further with the solutions.
I would be interested in your solutions.
Hi Gautam
please check
MIPI DSI bring up for a Truly display with HX8363 driving controller on i.MX7D
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------