Hi, Please don't post, use inline replies. On Wed, May 17, 2023 at 6:34 PM Paulo <pavacic.p@xxxxxxxxx> wrote: > > On Wed, May 17 2023 at 05:50:22 PM +0530, Jagan Teki > <jagan@xxxxxxxxxxxxxxxxxxxx> wrote: > > Just to add a few pieces of information for you to understand better > > on the context of dsi panels. DSI panels can be part of > panel-simple.c > > or panel-<vendor-part>.c DSI panels whose init and exit sequence is > > generic are suitable to add it in panel-simple and have bindings on > > panel-simple.yml. > > This panel doesn't fit that well into panel-simple.c since it has > initialization sequence. For that reason it would fit more into > panel-sortofsimple.c which didn't exist so I have created new driver > and called it panel-mipi-dsi-bringup.c. > > > Some DSI panels have specific init and exit > > sequences in terms of power, reset and DCS then those have separate > > drivers to handle and whose driver name must be panel-<vendor-part>.c > > or similar and bindings also follow a similar naming convention. > > I have made a driver exactly for that purpose. Driver that allows > adding new panels which have specific init sequences (and of course > timings and other stuff). fannal,c3004 can be seen as a working example. > > Here is code snippet from the driver: > ``` > static const struct brup_panel_info brup_fannal_c3004_panel_info = { > .display_mode = &brup_fannal_c3004_display_mode, > .num_of_dsi_lanes = 2, //how many wires are connected to the panel > .video_mode = BRUP_VIDEO_MODES[BRUP_SYNC_PULSE], > .mipi_dsi_format = MIPI_DSI_FMT_RGB888, > .mipi_dsi_mode_flags = > MIPI_DSI_CLOCK_NON_CONTINUOUS | MIPI_DSI_MODE_VSYNC_FLUSH | > MIPI_DSI_MODE_VIDEO_HSE | MIPI_DSI_MODE_NO_EOT_PACKET, > .bus_flags = DRM_BUS_FLAG_DE_LOW | DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE, > .panel_enable_function = &brup_panel_fannal_c3004_enable_function > }; > ``` > where enable function is function with init sequence and other values > are values that might be different for different displays. > > All the inputs are appreciated as this is my first time submitting > patch. If you see anything that is odd to you please reach out to me. > All in all I believe I now understand how should device tree look and > the reasons/ideology behind it. So, the driver has to be panel-fannal-c3004.c and binding to be fannal,c3004.yaml. Thanks, Jagan.