[ADV7393] DRM Encoder Slave or DRM Bridge

Tomi Valkeinen tomi.valkeinen at ti.com
Mon Sep 26 12:30:04 UTC 2016



On 26/09/16 15:25, Vikas Patil wrote:
> On Fri, Sep 23, 2016 at 4:30 PM, Tomi Valkeinen <tomi.valkeinen at ti.com> wrote:
>> On 22/09/16 16:22, Vikas Patil wrote:
>>
>>> 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.”
>>
>> Difficult to say... So OMAP4+ DSS hardware does support interlace output
>> for DPI. The driver has never supported it, nor do I have any hardware
>> to test it. It might be quite easy to add, though.
>>
> If it is easy and doable then could you describe what I need to do to
> support it?

I think there are a few problems there, as the analog connector wasn't
designed to support detection. But you can check the detect callback
from the encoder/connector drivers.

The problem is, it returns a bool, whereas we need a tristate return
value here to represent connected, not connected, unknown.

>> If I read the above snippet right, to use progressive input, the DISPC
>> needs to output at double refresh rate. So probably what you would have
>> to do is in ADV driver, you have your set_timings function, where you
>> should double the pix clock before you pass the timings forward to the
>> DISPC's DPI driver.
>>
> 
> I have configured ADV7393 chip in following mode with the timing below
> in connector-analog.tv.c. With this I am seeing continuous flicker
> with nothing on display (black screen) and sometime could see the
> kmscube but it seems it renders in four quadrant(i.e. once in each
> quadrant). I have also tried doubling the pixel clock from 27MHz to
> 54MHz in timing for non-interlaced mode of ADV7393 but with it also
> nothing on display and continuous flicker.
> 
> Do you know what might be going wrong? What should I look for to fix this?
> 
> ** ADV config:
> - 16-bit SD RGB input
> - NTSC mode
> - YPrPb component output (CVBS)
> - non-interlaced mode
> 
> ** Timing configured in in connector-analog.tv.c
> 
> static const struct omap_video_timings harman_ntsc_timings = {
>         .x_res          = 720,
>         .y_res          = 480,
>         .pixelclock     = 270000000,

That's 270MHz.

 Tomi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20160926/3b21cb8e/attachment.sig>


More information about the dri-devel mailing list