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.

How to Configuring 1080P in DM365

Hi,

I am trying to display 1080P through analog port (component) of DM365.

I have configured the VENC as below,

VENC_VMOD_VENC = 1

VENC_VMOD_ITLC = 1

VENC_VMOD_HDMD = 1

VENC_VMOD_VIE = 1

But I am not sure what to set for "VENC_VMOD_TVTYP". There is no option for 1080P.

I tried to set VENC_VMOD_TVTYP = 2. Then it was outputting 1080i and displaying only upper half portion of the image.

 

Please help me in configuring DM365 to 1080P mode..

 

Regards

Jai

 

  • Jai,

    The Analog Interface does not support 1080P, only 720p/1080i.

    The LCD can support 1080p for display however you will have to set it up manually in the non-standard method (VMD=1) because we don't have 1080 Progressive standard mode.  You will then have to manually program all the timing registers (mentioned in section 4.3) according to the 1080p spec.

    Keep in mind that DM365 will not be able to decode 1080p30 to display it, you will need a DM368 for supporting decoding 1080p30.

    Hope this guides you in the right direction.

    regards,

    miguel

     

  • Hi Miguel,

    Thanks for the your reply.

    I am using LSP v2.10 along with DVSDK v2.10.  The sample application that I am using is as follows,

    ---------------------------------------------------------------------------------------------------------------------------

    if ((fd_osd0 = open(OSD0_DEVICE, O_RDWR)) < 0) {
        return -1;
    }

    if(change_sysfs_attrib(ATTRIB_MODE, "NON-STANDARD")) {
         return -1;
    }

    if (ioctl(fd_osd0, FBIOGET_FSCREENINFO, &osd0_fixInfo) < 0) {
         printf("\nFailed FBIOGET_FSCREENINFO osd0");
         return -1;
    }

    /* Get Existing var_screeninfo for osd0 window */
    if (ioctl(fd_osd0, FBIOGET_VSCREENINFO, var_info) < 0) {
        printf("\nFailed FBIOGET_VSCREENINFO");
        return -1;
    }
    prev_osd0_var = *var_info;

    /* Modify the resolution and bpp as required */
    var_info->xres = 1920;
    var_info->yres = 1080;
    var_info->bits_per_pixel = 16;
    var_info->vmode = FB_VMODE_NONINTERLACED;
    var_info->nonstd = 1; /* Non standard resolution */
    var_info->yres_virtual = var_info->yres * OSD_NUM_BUFS;
    var_info->yoffset = 0;

    var_info->pixclock     = 13000;
    var_info->left_margin  = 200;
    var_info->right_margin = 80;
    var_info->upper_margin = 13;
    var_info->lower_margin = 31;
    var_info->hsync_len    = 88;
    var_info->vsync_len    = 5;

    /* Set window position */
    pos.xpos = test_data.osd0_xpos;
    pos.ypos = test_data.osd0_ypos;

    if (ioctl(fd_osd0, FBIO_SETPOS, &pos) < 0) {
        printf("\nFailed  FBIO_SETPOS");
        return -1;
    }

    /* Enable the window */
    if (ioctl(fd_osd0, FBIOBLANK, 0)) {
        printf("Error enabling OSD0\n");
        return -1;
    }

    ---------------------------------------------------------------------------------------------------------------------------

    Even I tried to set the timing registers from my application using dispc_reg_out( ).

    But whatever the application is failing in ioctl(fd_osd0, FBIOGET_VSCREENINFO, var_info) .

    Whether I need to make any changes in the driver code. If so where I need to modify?

    Is there any patch available for 1080P (Non standard mode) so that I can use directly without modifying the driver code.

    Please suggest.

     

    Regards

    Jai


     

  • Given that this has now shifted to more of a discussion on Linux software drivers, I will move this to that forum for follow up.