Image displayed but half screen with incorrect color

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Image displayed but half screen with incorrect color

107件の閲覧回数
fsong
Contributor I

Hello,

We are encountering the display issue.

Hardware: NXP i.MX8M Mini SOM + our function board + third-party rm67199 based panel

OS: Linux 6.1.22  

This is the first time we use panel to connect to our board. The original driver panel-raydium-rm67191.c is used with small change on the default mode per the panel vendor's advice, as below:

static const struct drm_display_mode default_mode = {
           .....
           .hdisplay = 1080,
           .hsync_start = 1080 + 60,
           .hsync_end = 1080 + 60 + 10,
           .htotal = 1080 + 60 + 10 + 80,
           .vdisplay = 1920,
           .vsync_start = 1920 + 15,
           .vsync_end = 1920 + 15 + 5,
           .vtotal = 1920 + 15 + 5 + 8,
           .width_mm = 68,
           .height_mm = 121,
            ... ...
};   

And the panel related part in board dts file, as below:

panel@0 {
       compatible = "raydium,rm67199";
       reg = <0x00>;
       pinctrl-0 = <&mipi_dsi_en>;
       reset-gpio = <&gpio1 8 0x1>; /* 0x1: GPIO_ACTIVE_LOW */
       dsi-lanes = <0x04>;
       video-mode = <0x2>;    /* 0: burst mode
                                             * 1: non-burst mode with sync event
                                             * 2: non-burst mode with sync pulse
                                             * 3: command mode
                                            */
        panel-width-mm = <68>;
        panel-height-mm = <121>;
       status = "okay";
};
 
Now the system can boot up with "4 penguins" and then the background picture shown on the screen. However the color on the left half of screen is incorrect (the right half looks normally), as below:
half_screen.jpg
Then we got the tool modetest for testing the display functionality. The output image of modetest (command: # modetest -s 35@33:1080x1920@XR24), is as below:
Image_XR24.jpg
I also found that the display color of left screen should be incorrect by comparing to the modetest output on normal display system.
 
No obvious errors of panel driver and libdrm are found from the kernel log. The log may be not detailed enough.
 
Any tips for this issue are highly appreciated.
 
Thanks,
Frank Song  
0 件の賞賛
2 返答(返信)

84件の閲覧回数
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

Check the clock in device tree apparently is not correct.

Regards

0 件の賞賛

75件の閲覧回数
fsong
Contributor I

Thanks a lot for your tip. Current clock setting in device tree:

 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>;

... ...

}

mipi_dsi@32e10000 {
#address-cells = <0x01>;
#size-cells = <0x00>;
compatible = "fsl,imx8mm-mipi-dsim";
reg = <0x32e10000 0x400>;
clocks = <0x02 0x8e 0x02 0x8f 0x02 0xce>;
clock-names = "cfg\0pll-ref\0apb-root";
assigned-clocks = <0x02 0x8e 0x02 0x8f>;
assigned-clock-parents = <0x02 0x36 0x02 0x02>;
assigned-clock-rates = <0xfdad680 0xb71b00>;
interrupts = <0x00 0x12 0x04>;

... ...

}

Let me post entire dts file.

0 件の賞賛