[Android][DRM] - how to bring up the panel for DSI on kernel 4.14

Hi all,
I’m new for the 4.14 kernel for 410c 96boards. The panel related source code migrated to GPU/DRM from video in 4.14. The architecture is different for me for DRM. My understanding of this new architecture for bringing up the panel is to switch the output from adv7511/HDMI to HS expansion slot on component U8E. This means if I would like to bring up a panel, what I need to do is adding the panel code to probe by the kernel and link to the connector.

From log seems everything is connected and CMD “11” and “29” for enabling the panel sent to the panel(checked by the log) as well. However, the panel is still showing nothing and doesn’t work. I do see something strange, which is “dsi_err_worker: status=4” keep showing. It looks like the FIFO is full and cannot receive any data. Can anyone have a look for the log I attached to share the clue? Please correct me if my understanding above is not right. Thank you.

You can have full log from here.

[ 26.736662] binder: 2629:2629 transaction failed 29189/-22, size 100-0 line 3012
[ 26.742092] [drm] vblank_ctrl_queue_work
[ 26.743150] [drm] vblank_ctrl_worker
[ 26.770873] dsi_err_worker: 17392 callbacks suppressed
[ 26.770882] dsi_err_worker: status=4
[ 26.775049] dsi_err_worker: status=4
[ 26.778848] dsi_err_worker: status=4

Which build are you running? which panel? What change did you apply to the devcicetree?

Hi Loic,
I’m using the 410c board, and the panel is Innolux which can bring up on my 410c with Android L + Kernel 3.x. The modification I did is major in, adv7511.c to pull the gpio_pd to level high, dtsi file and add the [panel-innolux-p079zca] for Innolux panel. The configs here is I’m using for this DRM test.

[panel-innolux-p079zca]

I checked most of the post here, and all the discussion is only focused on DRM HDMI. I don’t see the source code branch or clear steps can let users know how to apply the panel.

BR,
Aaron

Moreover, I have the “surfaceflinger” socket creating problem and it shows cannot find the client, manager and vsync.

When I’m using HDMI port, those error message will disappear. But those error message will come back if I unplug the HDMI cable. I’m wondering does anything I missed in the kernel for DSI/panel mode cause the same surfaceflinger?

[   12.856191] [drm][kms] Modeline 39:"1080x1920" 60 158910 1080 1210 1212 1352 1920 1924 1926 1959 0x0 0x0
[   12.867183] init: starting service 'surfaceflinger'...
[   12.877037] init: Could not create socket 'pdx/system/vr/display/client': Failed to bind socket 'pdx/system/vr/display/client': No such file or directory
[   12.878065] init: Could not create socket 'pdx/system/vr/display/manager': Failed to bind socket 'pdx/system/vr/display/manager': No such file or directory
[   12.890771] init: Could not create socket 'pdx/system/vr/display/vsync': Failed to bind socket 'pdx/system/vr/display/vsync': No such file or directory