Hello.
I'm working on adding an MIPI DSI panel to a custom IMX8M mini - based board.
The panel is based on Novatek NT35516 chip, so I'm implementing a custom driver for it.
Here is my device tree changes to add a panel:
The decompiled final device tree looks like this:
lcdif@32e00000 {
#address-cells = <0x01>;
#size-cells = <0x00>;
compatible = "fsl,imx8mm-lcdif";
reg = <0x32e00000 0x10000>;
clocks = <0x02 0x6b 0x02 0xcd 0x02 0xce>;
clock-names = "pix\0disp-axi\0disp-apb";
assigned-clocks = <0x02 0x6b 0x02 0x55 0x02 0x56>;
assigned-clock-parents = <0x02 0x28 0x02 0x41 0x02 0x38>;
assigned-clock-rate = <0x2367b880 0x1dcd6500 0xbebc200>;
interrupts = <0x00 0x05 0x04>;
lcdif-gpr = <0x4c>;
resets = <0x4d>;
power-domains = <0x0c>;
status = "okay";
port@0 {
reg = <0x00>;
phandle = <0x57>;
endpoint {
remote-endpoint = <0x4e>;
phandle = <0x51>;
};
};
};
mipi_dsi@32e10000 {
#address-cells = <0x01>;
#size-cells = <0x00>;
compatible = "fsl,imx8mm-mipi-dsim";
reg = <0x32e10000 0x400>;
clocks = <0x02 0x8e 0x02 0x8f>;
clock-names = "cfg\0pll-ref";
assigned-clocks = <0x02 0x8e 0x02 0x8f>;
assigned-clock-parents = <0x02 0x36 0x02 0x02>;
assigned-clock-rates = <0xfdad680 0xb71b00>;
interrupts = <0x00 0x12 0x04>;
dsi-gpr = <0x4c>;
resets = <0x4f>;
power-domains = <0x50>;
status = "okay";
port@0 {
reg = <0x00>;
endpoint {
remote-endpoint = <0x51>;
phandle = <0x4e>;
};
};
panel@1 {
compatible = "maithoga,nt35516";
reg = <0x01>;
vdd-supply = <0x52>;
vddi-supply = <0x53>;
reset-gpios = <0x2a 0x0d 0x01>;
backlight-gpios = <0x2a 0x0f 0x00>;
status = "okay";
};
};
Driver's enable method is called and executed sucessfully, the panel gets commands correctly.
But there is a problem with port@0 node (even though it's taken from original code):
There is no image on the display. Changind device tree to raydium panel - make's the same error for port@0.
Any ideas how to fix it?