↓ Archives ↓

Archive → April, 2010

TVP5150 Patch for RidgeRun SDK (BT656)

I finally had a little time to put together the patch for the RR SDK which allows you to use the TVP5150 board in BT.656 mode.  This requires the 1.5 version of the Leopard Board, and the DM355SDK840402 SDK from RidgeRun.

The image quality looks very good.  If you’ve been using the board in generic mode, you may have noticed the DM355 sometimes gets the fields backwards.  With BT.656 mode, embedded sync is used and it clears up any issue with that.  I think the image could still be improved with a real de-interlacing algorithm, but I think that would require resizer support in the RR SDK.

tvp5150-bt656.patch

  • To install the patch, first make sure you RR SDK is configured and builds ok.
  • Then download the patch and place in your kernel/linux-2.6.29/patches directory
  • Then, in the patches directory, edit the “series” file, and place tvp5150-bt656.patch at the end of the series.
  • Next, you can do a “quilt push” command to apply the patch. It should apply cleanly, and you should get a “Now at patch tvp5150-bt656.patch” message at the end.
  • Change to your linux 2.6.29 directory, do a “make menuconfig”, then go
    device drivers -> multimedia devices -> video capture adapters ->
    encoders/decoders and other helper chips -> and select tvp5150 for
    leopard. Unselect the Aptina MT9V113.
  • Go back to the SDK root directory, DM355SDK840402 and rebuild the kernel with a “make kernel”
  • Once that is done, do a “make install” to download the kernel to your Leopard board. You really shouldn’t need to rebuild the filesystem.
  • Power down your Leopard, attach the TVP5150 card, and apply power.
  • To test your install, see the Gstreamer test pipelines in another posting.

TVP5150 Board Schematic

If you’re interested, I’m posting the schematic of the TVP5150 board, as it ships.  Remember that connector J2 is not populated, but you can get the connector from digikey and install it yourself if you’re looking for an easy way to access the UART which appears there.  Resistors R4 and R2 are zero ohm resistors which you can remove if you don’t have a revision 1.5 leopard board.

As before, you can order a tvp5150 board by clicking here.

TVP5150 board schematic

TVP5150 Patch Update

While testing the TVP5150 boards this weekend, I found that I sometimes got video which seemed to be shifting colors. It didn’t seem to be hardware related, so I started investigating the tvp5150 register settings. I’m using the defaults for everything, but I did seem to isolate it down to the color subcarrier PLL. By setting the “Color subcarrier PLL frozen” bit, the problem seemed to go away. So, I’m attaching v2 of the patch for the RR SDK. If you’re interested in the particular change, it’s the tvp5150_init_reg_seq structure in tvp5150_davinci.c file. Here is the new version:

static const struct tvp5150_reg tvp5150_init_reg_seq[] = {
{TOK_WRITE, REG_OPERATION_MODE, 0×01},
{TOK_WRITE, REG_OPERATION_MODE, 0×04},
};

And here is the new patch…
tvp5150_v2.patch