On Sun, Oct 16, 2022 at 3:31 AM Marek Vasut <marex@xxxxxxx> wrote: > > On 10/5/22 17:13, Jagan Teki wrote: > > [...] > > > @@ -1321,6 +1322,32 @@ static void samsung_dsim_atomic_post_disable(struct drm_bridge *bridge, > > pm_runtime_put_sync(dsi->dev); > > } > > > > +#define MAX_INPUT_SEL_FORMATS 1 > > + > > +static u32 * > > +samsung_dsim_atomic_get_input_bus_fmts(struct drm_bridge *bridge, > > + struct drm_bridge_state *bridge_state, > > + struct drm_crtc_state *crtc_state, > > + struct drm_connector_state *conn_state, > > + u32 output_fmt, > > + unsigned int *num_input_fmts) > > +{ > > + u32 *input_fmts; > > + > > + *num_input_fmts = 0; > > + > > + input_fmts = kcalloc(MAX_INPUT_SEL_FORMATS, sizeof(*input_fmts), > > + GFP_KERNEL); > > + if (!input_fmts) > > + return NULL; > > + > > + /* This is the DSI-end bus format */ > > + input_fmts[0] = MEDIA_BUS_FMT_RGB888_1X24; > > + *num_input_fmts = 1; > > Is this the only supported format ? NXP AN13573 lists the following: > > i.MX 8/RT MIPI DSI/CSI-2, Rev. 0, 21 March 2022 > 3.7.4 Pixel formats > Table 14. DSI pixel packing formats > > Loosely Packed Pixel Stream, 20-bit YCbCr, 4:2:2 > Packed Pixel Stream, 24-bit YCbCr, 4:2:2 > Packed Pixel Stream, 16-bit YCbCr, 4:2:2 Look like these are unsupported in media-bus-format.h list. > Packed Pixel Stream, 30-bit RGB, 10-10-10 > Packed Pixel Stream, 36-bit RGB, 12-12-12 > Packed Pixel Stream, 12-bit YCbCr, 4:2:0 Same issue, unsupported. > Packed Pixel Stream, 16-bit RGB, 5-6-5 MEDIA_BUS_FMT_RGB565_1X16 > Packed Pixel Stream, 18-bit RGB, 6-6-6 Same issue, unsupported. > Loosely Packed Pixel Stream, 18-bit RGB, 6-6-6 > Packed Pixel Stream, 24-bit RGB, 8-8-8 Format MEDIA_BUS_FMT_RGB666_1X18 MEDIA_BUS_FMT_RGB888_1X24 > > The MX8MM/MN LCDIF can generate all of those RGB formats , the MX8MP > LCDIFv3 can also generate the 16bit YCbCr . Is YCbCr denoted as UYVY in media-bus-format.h ? Thanks, Jagan.