This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAP35x EVM DVI Support

With the latest software package release (PSP 1.0.0) DVI is now supported on the Mistral OMAP35x EVM board. There is a caveat to this though, in that the current EVM hardware must have a resistor replaced for the DVI to function properly, in particular resistor R18 (top side of the EVM in the group of surface mount resistors near the DVI connector) must be replaced with a 510 Ohm resistor (the current/incorrect value is 10k). With the minor hardware modification and the newer driver package you should be able to get solid DVI output.

EDIT: Note it seems that this resistor change only applies to the earliest boards manufactured (first 150 EA boards), so most folks should not have to worry about modifying their board hardware, including anyone who orders a board today.

The commands to change the output to DVI at 720p are:

# echo DVI > /sys/class/display_control/omap_disp_control/ch0_output
# echo 720P > /sys/class/display_control/omap_disp_control/ch0_mode

  •  Hi!

    Do you have a test programme to display through DVI output? Please share.

    Thanks 

    BernieThompson said:

    With the latest software package release (PSP 1.0.0) DVI is now supported on the Mistral OMAP35x EVM board. There is a caveat to this though, in that the current EVM hardware must have a resistor replaced for the DVI to function properly, in particular resistor R18 (top side of the EVM in the group of surface mount resistors near the DVI connector) must be replaced with a 510 Ohm resistor (the current/incorrect value is 10k). With the minor hardware modification and the newer driver package you should be able to get solid DVI output.

    EDIT: Note it seems that this resistor change only applies to the earliest boards manufactured (first 150 EA boards), so most folks should not have to worry about modifying their board hardware, including anyone who orders a board today.

  • Anything that draws to the framebuffer should get some output. If you are running the EVM with the default demo (flip through pictures with the buttons) than all you have to do is hit a button once the output is switched to DVI and you should see the image pop up on the DVI display.

  •  Thanks for reply,

     When I am connecting DVI to Display nothing displays at my display. Do I have to write some code which initializes TV channel? I have experience with Frame buffer but not with DVI. If you have a any test example please suggest.

     

    Thanks! 

  • Do we know the default video output (resolution, frame rate) being output to display by the demo?  If so, you should make sure the display can support such video input.

  • I don't know of any video examples, but the example that boots with the board that shows pictures on the on board LCD will work for putting output on the DVI, since it is just drawing images into the frame buffer the frame rate and resolution do not seem to matter. Have you run both of the commands below to switch the output to DVI at a proper resolution, and are you certain you are booting the new 1.0.0 SDK kernel?

    # echo DVI > /sys/class/display_control/omap_disp_control/ch0_output
    # echo 720P > /sys/class/display_control/omap_disp_control/ch0_mode

  • The display must be able to interpret the data at the other end, so the frame rate and resolution do matter.  For instance, not all DVI displays support 720p; to complicate things further, not all DVI displays that support 720p support 480p (a bit uncommon, but they are out there). As I suggested in another post, ideally, the display's EDID data should be used to determine compatibility with display.

  • To clarify what I meant, resolution and frame rate of the output of the application you are using to fill the display do not matter if the goal is to see something and the application is showing static images, I was not referring to what is actually coming out of the DVI, for that you are entirely correct, I was assuming that the display being driven will accept a generic 720p input over DVI. The display must support the standard that the driver is outputting, unfortunately in the current driver I do not believe it is reading any EDID data, and thus the outputs are just generic 720p or 480p which you control manually. If using a low quality display that may not support 720p or 480p generic timings than you may want to try a different display, most HDTVs should be able to handle this, and I can confirm that a Dell 2407WFP display can handle it as well.

  • Thanks for reply!

    Here is detail of my version of Kernel image:

        System initialization...

        Hostname       : OMAP3EVM
        Filesystem     : v1.0.0

        Kernel release : Linux 2.6.22.18-omap3
        Kernel version : #1 Tue Jul 1 17:16:34 IST 2008

    When I typed

    # echo DVI > /sys/class/display_control/omap_disp_control/ch0_output
    # echo 720P > /sys/class/display_control/omap_disp_control/ch0_mode  ---> screen goes blank after these two steps

    but nothing displays on LCD screen. I am using SyncMaster 181T and SyncMster 243T. One is 1280x1024 screens and another is 1920x1200 HD.

    Do I miss anything

    thanks

     

     

     

  • It looks like you have the proper commands and software, and I would think that one of your displays would be able to accept the signal coming out of the EVM. The one thing you do not mention specifically is having some software running which draws something to the display, if nothing is trying to draw to the display than you will not see any output. The slide show demo out of the box should cover this aspect, but for the earlier versions of this you would press buttons on the EVM to change the picture, so once you switch the output to DVI try pressing the buttons on the EVM to see if it will draw up a picture for you. You may also want to try '480P' instead of '720P' for the ch0_mode to see if your display will handle that instead.

  • Hi! I have demo which changes images automatically. Also I have applications which use V4l and framebuffer to display my decoded output. I have finished integration of video player also. For DVI, I am missing something. Btw I have OMAP eval Main board Rev D. I read that resistor r18 is correctly placed for Rev D. So I am not suspecting Hardware peoblem. 

    I tried with all above mentioned display applications but no success so far.  

    I have noted that omap_disp_out.c has following code

    #if defined(CONFIG_OMAP3EVM_LCD_VGA) || defined(CONFIG_FB_OMAP_LCD_VGA)
    #define H4_LCD_XRES         480
    #define H4_LCD_YRES         640
    #define H4_LCD_PIXCLOCK_MAX    41700 /* in pico seconds  */
    #define H4_LCD_PIXCLOCK_MIN    38000  /* in pico seconds */
    #else
    #ifdef CONFIG_OMAP3430_ES2
    #define H4_LCD_XRES         240
    #define H4_LCD_YRES         320
    #define H4_LCD_PIXCLOCK_MAX    167000 /* in pico seconds  */
    #define H4_LCD_PIXCLOCK_MIN    152000  /* in pico seconds */
    #else
    #define H4_LCD_XRES         240
    #define H4_LCD_YRES         320
    #define H4_LCD_PIXCLOCK_MAX    185186 /* freq 5.4 MHz */
    #define H4_LCD_PIXCLOCK_MIN    138888 /* freq 7.2 MHz */
    #endif
    #endif

     

    In one of the post http://linux.omap.com/pipermail/linux-omap-open-source/2008-June/012744.html

    its said that this should be

    #define H4_LCD_XRES             1280   /* Change these */
    #define H4_LCD_YRES 720
     
    Can you check the values in Kernel you have with SDK1.0.0. 

     

  • Your board is a rev newer than mine, mine reads Rev C and had to have the resistor changed. Of course you will likely get some output even if you had a bad resistor depending on how sensitive your display is, but it will likely be noisy (mine was).

    The post you have from the open source list is dated well before the TI released DVI supporting driver was available, so I do not think it applies to the newer kernel since these figures can be controlled with the /sys entry now (i.e. ch0_mode can be VGA, 720P, or 480p). 

     

  • hello Leute !    I have tested my output on oscilloscope. There is no output when I use following command

    echo DVI > /sys/class/display_control/omap_disp_control/ch0_output
    echo 720P > /sys/class/display_control/omap_disp_control/ch0_mode

    My LCD do blanks out but no output at DVI output port. I have REV D, and kernel 1.0.0 image. I am using the same image which comes with SDK1.0.0 (no recompilation).

    Any hints?

  • It may be worth rebuilding and loading a new image just in case something was wrong along the way, however beyond this it sounds like you have done most everything that you can do to get output on the DVI, and from your descriptions it should be outputting at least something. At this point you may want to work with Mistral to consider RMA as it could be you have a defect on your DVI output hardware. It does not look like the ITBOK utility they include covers DVI though they may have another test mechanism you can use.

  • Hi DVI runs in my case. I tried DEL monitor and this works (2405 model). But when I run my player (Audio and video both) display goes blank but audio still comes. I am using alsa for audio and v4L for video. This combination works with LCD but not with DVI. nyone faced same problem?

  • I believe there is a know issue playing both audio and video; have you tried playing video alone?

  •  

    Juan Gonzales said:

    I believe there is a know issue playing both audio and video; have you tried playing video alone?

    That issue is with the DVSDK as I understand, so it may not apply to a custom media player.

  • Does this mean this is an issue with the DVSDK demo as opposed to the Linux drivers that come with DVSDK?  If so, then I agree that the custom player may be ok; if it is a driver issue though, then it may not matter what the user level application is.

    Is this issue documented anywhere (e.g. release notes)?  Sorry for asking basic questions, but I figure it may help point everyone in the right direction of where to look for this sort of information.

  • I have custom player which runs fine when I direct output to LCD. But when I use DVI I can hear audio output but i can't see anything on DELL monitor. I feel this is a driver problem. Can someone give me pointer of document which highlights such an issue?

  • Driverhacker,

    Is there an easy way for you to run a video only (no audio) test to see if this works?  We just checked the release notes, and there does not appear to be any related issues at the driver level. 

  • yes I can define video play out class only and i can run without audio. In that case player runs *.mp4 fine. I can see display. When I define audio playout calss also nothing comes on DVI port.

  • we are running some tests internally and confirming what you are seeing, we will post an update as soon as we have more information

  • It seems you are really on to something here, this can be reproduced with the out of the box demo by running it through the DVI and pressing the S10 button (and than another button to start the recording). We went through some additional tests and it seems to be the act of starting the audio driver kills the DVI output, that is if the audio is already playing something when you switch to DVI the DVI does not break.

    We will have to investigate this further with the PSP (peripheral support package) team to see if this is something we can get fixed in a future PSP release. Unfortunately the best I can suggest for the mean time would be to start your audio playback before doing the switch to DVI in your program.

  • Work around is fine for me (atleast for coming ARM conference). I have another issue. When I run my player, this works fine most of the time but sometimes my application hangs. There is no effect of cntr + C also. In this case, I have to reset my board. I checked my V4L as well as alsa implementation. I am satisfied with the way i have coded.

     I have many wrong blocks on board. I get messages like "CRC check error" at the start. Can this cause hanging or I am not debugging in right way?

    Thanks!

     

  • I'm seeing similar DVI problem, and possible NAND issues:

    1.  Can't get the DVI output working at all (plain 1.0.0 SDK, no DVDSK) using the echo commands listed above and I'm not doing anything with audio.  I'm only trying to display basic demo images on outboard display via DVI instead of on onboard LCD.  The commands result in the onboard LCD turning off, but nothing showing up on outboard LCD.  And I confirmed we have the correct R18 value.  Is there a DVI problem even with no audio playing?

    2.  At application startup, I'm seeing...

    "onenand_wait: ECC error = 0x0400" errors and one...

    "JFFS2 warning: (286) jff2_do_read_inode_internal: Truncating ino#236 to 731885 bytes failed becuase it only had 414354 bytes to start with!"

    Do either of these indicate a real problem?

    Thanks.

  • Hi!

    Your problem is wrong LCD monitor. Try DELL 2407 or 2405 if you have. My output does not work with Samsung (I tried SyncMasters 243T, 910T and many others).

    All the best!

     

    Can anyone tell me where to look for changes, so that i can make Samsung monitors working as well.

  • Driverhacker is probably correct about your DVI output, whatever display you use needs to support a 720p or 480p input, it works on the Dell 2407WFP monitors we use here, I have not had a chance to try the output on any other displays.

    As to the flash warnings, I did some looking around and there does not seem to be any record of these errors. Does the software seem to work aside from the DVI, or are there other problems you believe may be related to the flash warnings?

  • I am investigating my problem. To narrow down the problem I switched off my display. It works fine in infinite while loop. I will provide feedback if I find something significant on Monday.

    bis Montag!

    ciao

     

  • The software seems to work OK aside from the DVI, so not sure what the flash warnings are indicating.  Regarding DVI issue, do you support for modes other than 480P and 720P can be added easily?  I may go that route to try to get the outboard display working.

     

  • Sure, the resolutions are software configurable and you have the driver source code; therefore, you should be able to add support for other resolutions by modifying the driver source code a bit.

  • Juan is right, though it is still not obvious to me where in the source this is done unfortunately, I have gone digging looking for this a few times so if someone finds the source file that contains the code to configure the display port for the 720p or 480p settings I would be interested to know :).

  • file drivers/video/omap/omap_disp_out.c contains info about resolution 
    #define H4_LCD_XRES 480
    #define H4_LCD_YRES 640
  • Hello Everyone, Currently my output is running on DEL 2405 monitor. I tried running same for 2005 DELL with more or less same resolution, This fails. Can anyone tell me, how to make output run on other monitor types?

  • I have worked with DVI drivers in the past; from my experience, the best way to ensure compatibility is to have the DVI transmitter driver (OMAP driver in this case) read the displays EDID data (describes display capabilities) and reconfigure itself accordingly.  All DVI displays have a native or preferred resolution, along with a list of other resolutions it supports.  I would think that a high resolution DVI display would likely support lower resolution displays (was not always the case 6 years ago) today, but would be interested to see what others are finding.

  • The Dell 2405 should support this, the monitor I use is a Dell 2407 but Juan's which I borrowed this morning, is a 2405, and it appears to be working just fine. Based on this I would suspect a bad cable or incorrect kernel for DVI support.

    As to the source code question, I am still looking for the code that takes in the /sys/class/display_control/omap_disp_control/ch0_mode value for 720P and adjusts the timings to be a 720P output, as this would be the code you could adjust to fit timing requirements for varying monitors.

  • hello Bernie, Can you conform if this is 2407 fpw or 2407WFP. I have to order this for trade show. I have 2405 fpw which works. Can anyone post any other console which is reported to be working with DVI?

  • The one I have (which Bernie tested with) is 2405 FPW.

  • Mine is the 2407WFP which does work properly. I would suspect that many HDTVs will work as well, as it is outputting a HDTV standard 720p, I have seen it working on some but do not know the models.