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.

Can't set COMPONENT Digital output On DM355

Other Parts Discussed in Thread: THS8200

Hi,

I am using the DM355 EVM. trying to get High Definition (HD) video outputs, when I set boot arguments as follow:

 setenv bootargs mem=116M console=ttyS0,115200n8 root=/dev/mtdblock3 rw rootfstype=yaffs2 ip=off video=davincifb:vid0=1280x720x16,5529K:vid1=1280x720x16,5529K:osd0=720x576x16,2025K davinci_enc_mngr.ch0_output=COMPONENT1 davinci_enc_mngr.ch0_mode=720P-60   

but after bootin the system, I cat  /ch0/output was "LCD" and /ch0/mode was "640x480". Why can't  I get COMPONENT and high resolution?

By the way, We not use THS8200,  We want  to get Digital output like YUV and use NXP 9989 to convert it to HDMI stream, I confused how logicPD, VPBE, THS8200 works?  and Can I get Digital high resolution output   without THS8200 from DC5?

    Thanks in advance!

  • Please note that according to http://focus.ti.com/lit/ug/spruel6/spruel6.pdf, which should also be included in your DVSDK PSP docs, you should be using COMPONENT1 (COMPONENT is not supported on DM355).  See the doc for more details.

  • Eric Hou said:
    By the way, We not use THS8200,  We want  to get Digital output like YUV and use NXP 9989 to convert it to HDMI stream, I confused how logicPD, VPBE, THS8200 works?  and Can I get Digital high resolution output   without THS8200 from DC5?

    One thought as to why this may not work by just setting bootargs variables is that the driver probably queries the THS8200 over I2C, so if the THS8200 was not present than the driver probably will not come up in the mode you want, you would have to look through your boot log to see what if anything is being printed out from the display driver, there is probably some information in there. To get the device to operate without the THS8200 present you would likely have to modify the display driver to remove the dependencies and add any new code that is needed for the NXP HDMI serializer.

  • yea, you can see that from my bootargs above, the question what I want to know is how can I get YUV video out from VPBE without THS8200,  you know, without it I just don't know how to set bootargs to make sure that I can get  HD resolution digital video output and then we can convert it to HDMI use NXP 9989, thanks again

  • Thanks for your answer, I can see the I2C NACK detected and can't Initialized THS8200 and failure to allocate the request framebuffer size, and how can I set HD resolution and framebuffer size without THS8200, and how can I just get the digital like RGB/YUV stream decode by VPBE? and can I just get them from DC5?

  • Can you post the log where you see the failure to 'allocate request framebuffer size'?  We can investigate this further, but it may turn out that some dirver mods may be necessary on your side to get rid of tHS8200 dependencies.

  • I'm enjoying my weekend at home now, may be tomorrow.  By the way,  as my see, I agree with you about the COMPONENT output dependence on THS8200,  so without THS8200 it just can't allocate the FB size you request, But, how can I get the Digtital output after decode from the file .mpeg4 and  before send to THS8200? I confused about that

  • Eric Hou said:
    how can I get the Digtital output after decode from the file .mpeg4 and  before send to THS8200?

    If you mean in the DM355 memory than you would have to modify your decode application, after decoding the mpeg4 file you should get frame pointers for each frame in your application that it will be passing to the display driver, this would be the point internally where you could get the digital video frame before it is sent on to the display driver and THS8200. If you mean on the actual hardware on your board than you would just have to probe the pins between the DM355 and the THS8200, so if your NXP could handle the exact same timings and was configured and ready to go than you could connect it in parallel to the video bus with the THS8200.

  • thank you for your answer, and the problem is I can't get enough resolution because when i set the bootargs to "COMPONENT1" "720P-60" but it just give me "LCD" and "640x480", so i can't upscale it bigger when the NXP card can't chang the resolution too, also, i have connect DC5 with the NXP card, but when i only can get "LCD" so  DC5 just output 640x480 PRGB stream, how can i get bigger resolution YUV/RGB stream from DC5.

    By the way, the boot log you kan see like: 

    Registering platform device 'i2c'. Parent at platform

    ch0 default output "COMPONENT1", mode "720P-60"
    ch1 default output "", mode ""
    VPBE Encoder Initialized
    wjb:logicpd_encoder_init
    MUX: initialized VOUT_FIELD_G70
    MUX: Setting register VOUT_FIELD_G70
          PINMUX1 (0x01c40004) = 0x00145555 -> 0x00105555
    MUX: Setting register VOUT_COUTL_EN
          PINMUX1 (0x01c40004) = 0x00105555 -> 0x00105555
    MUX: Setting register VOUT_COUTH_EN
          PINMUX1 (0x01c40004) = 0x00105555 -> 0x00105555
    LogicPD encoder initialized

    i2c_adapter i2c-0: THS8200 encoder initialized
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    i2c_adapter i2c-0: i2c read error
    i2c_adapter i2c-0: Resetting THS8200 card
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    i2c_adapter i2c-0: i2c write error = ffffff87

    ……

    i2c_adapter i2c-0: i2c write error = ffffff87
    i2c_adapter i2c-0: Failed to Program CDCE Clock Synthesiser
    SCSI subsystem initialized
    Interrupt measurement enabled at 27 ticks per usec.
    Interrupt holdoff maximums being captured.
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    DaVinci I2C WARNING: i2c: NACK detected
    Registering platform device 'dm_spi.0'. Parent at platform
    NetWinder Floating Point Emulator V0.97 (double precision)
    devfs: 2004-01-31 Richard Gooch (rgooch@atnf.csiro.au)
    devfs: boot_options: 0x1
    JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc.
    yaffs May 20 2009 09:08:14 Installing.
    Initializing Cryptographic API
    Registering platform device 'davincifb.0'. Parent at platform
    davincifb davincifb.0: dm_osd0_fb: Initial window configuration is invalid.
    Console: switching to colour frame buffer device 90x36
    davincifb davincifb.0: dm_osd0_fb: 720x576x16@0,0 with framebuffer size 2025KB
    davincifb davincifb.0: dm_vid0_fb: Initial window configuration is invalid.
    davincifb davincifb.0: dm_vid0_fb: 1280x720x16@0,0 with framebuffer size 5529KB
    davincifb davincifb.0: dm_osd1_fb: 640x480x4@0,0 with framebuffer size 1200KB
    davincifb davincifb.0: dm_vid1_fb: Initial window configuration is invalid.
    davincifb davincifb.0: dm_vid1_fb: 1280x720x16@0,0 with framebuffer size 5529KB
    watchdog: TI DaVinci Watchdog Timer: timer margin 64 sec
    Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled

    ……

     

    maybe i have to change FBDev, but i jsut want get more advance, thanks again

  • Juan

              I try to get the stream after decode by  "decodeVideoBuffer(hDecode, framePtr, lState.readSize, bufIdx, bufferElements[bufIdx].virtBuf, &frameStats, &decState)"  and write it to a file, but i don't know what format is it , as i thank it wolud be YUYV or UYVY but when i try to covert it from YUYV to RGB and display with GDI, I just get a screen like above, so what format is the decoded stream and how can I prove it?

             thanks

     

  • The pixel format in the file should be UYVY; you can use the Elecard YUV viewer (free) to view the file prior to converting to RGB just as a safety check to ensure you have something good prior to RGB conversion.