Hi Tomi, Now with the adv7393 driver in place, I was getting following error. After debugging found out that this is due to the “.interlace= true” in display timings “drivers\gpu\drm\omapdrm\displays\connector-analog-tv.c”. [ 14.564872] [drm:drm_helper_probe_single_connector_modes_merge_bits] [CONNECTOR:32:Unknown-1] [ 14.564882] [drm:omap_connector_get_modes] cvbs_out [ 14.564898] ------>adv7393_check_timings: start [ 14.569646] [drm:omap_connector_mode_valid] connector: mode invalid: 45:"720x480i" 120 27000 720 739 801 858 480 490 493 527 0x48 0x2a000015 [ 14.569659] [drm:drm_mode_debug_printmodeline] Modeline 45:"720x480i" 120 27000 720 739 801 858 480 490 493 527 0x48 0x2a000015 [ 14.569668] [drm:drm_mode_prune_invalid] Not using 720x480i mode: BAD After setting “.interlace= false” in display timings “\displays\connector-analog-tv.c” mode seems to be valid but still nothing on display probably because connector still doesn’t seem to be enabled from the below drm log. [ 14.787200] [drm:drm_setup_crtcs] [ 14.787211] [drm:drm_enable_connectors] connector 32 enabled? no [ 14.787220] [drm:drm_enable_connectors] connector 36 enabled? Yes Could you help me to understand if I could use “interlace=false”? ADV7393 seems to be supporting non-interlaced mode. From datasheet: “The ADV7390/ADV7391/ADV7392/ADV7393 support an SD noninterlaced mode. Using this mode, progressive inputs at twice the frame rate of NTSC and PAL (240p/59.94 Hz and 288p/50 Hz, respectively) can be input into the ADV7390/ ADV7391/ADV7392/ADV7393. The SD noninterlaced mode can be enabled using Subaddress 0x88, Bit 1.” What/Where should I need to look for enabling the above connector and attached to the correct encoder/crtc? Also looking at function dispc_mgr_timings_ok () in drivers/gpu/drm/omapdrm/dss/dispc.c, it seems driver of DSS doesn’t support interlace out as comment suggests below. Would this be a problem for me for driving ADV7393? What does this means? if (dss_mgr_is_lcd(channel)) { /* TODO: OMAP4+ supports interlace for LCD outputs */ if (timings->interlace) { DSSWARN("vikas----->: interlace failed\n"); return false; } if (!_dispc_lcd_timings_ok(timings->hsw, timings->hfp, timings->hbp, timings->vsw, timings->vfp, timings->vbp)) { return false; } } Thanks & Regards, Vikash On Thu, Sep 15, 2016 at 3:23 PM, Tomi Valkeinen <tomi.valkeinen@xxxxxx> wrote: > > > On 15/09/16 12:44, Vikas Patil wrote: >> On Wed, Sep 14, 2016 at 3:04 PM, Tomi Valkeinen <tomi.valkeinen@xxxxxx> wrote: >>> >>> >>> On 13/09/16 16:13, Vikas Patil wrote: >>>> Thanks Tomi for quick comment. >>>> >>>> I am thinking to base adv7393 driver on >>>> "drivers\gpu\drm\omapdrm\displays\encoder-tc358768.c" as I don't think >>>> any similar to adv7393 chip driver available. Could you please comment >>>> if this will help to get adv chip running? >>> >>> I presume you're not using mainline kernel, as that driver is not there. >>> I'm not familiar with adv7393, but yes, I think you can use that as an >>> example. >>> >> >> Thanks a lot for your comments. I am using latest (i.e. 3.00.00.03 ) >> Processor SDK Linux Automotive which is based on linux 4.4.14. >> >> As my display panel is connected as follows. I am little confused over >> the values I need to set for following properties in probe function. >> >> DPI1/VOUT1 -----16bit DRGB---> ADV7393 (Digital to Analog video >> encoder) ------> CVBS Out ------> Display Panel >> >> >> dssdev->ops.dpi = &adv7393_dpi_ops; (atv?) >> dssdev->type = OMAP_DISPLAY_TYPE_DPI; >> dssdev->output_type = OMAP_DISPLAY_TYPE_DPI; (Do I need to use >> OMAP_DISPLAY_TYPE_VENC, but DRA74x do not have VENC Encoder I think) >> dssdev->phy.dpi.data_lines = ddata->dpi_ndl; >> dssdev->port_num = 1; >> >> >> As adv7393 takes 16-bit DRGB as input and gives composite as output, >> does above configuration looks correct? or Do I need to change to >> something else (e.g. dpi,sdi,dvi, hdmi, atv, dsi)? > > The API is quite messy (full of legacy)... > > But the "ops" there are for the "downstream" direction, i.e. towards the > connector. So here you should have atv ops. You should then have > connector-analog-tv as a device after adv7393, and that connector driver > will be calling those atv ops. > > adv7393 itself will be calling dpi ops, offered by the DSS. > > You should set dssdev->type to DPI (that's the input). > dssdev->output_type to OMAP_DISPLAY_TYPE_VENC (output, although "venc" > is not quite correct here, but closest match we have). DRA74x doesn't > have VENC, but this is what the adv7393 outputs. > > Tomi > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel