SPRACD8 June   2019 DRA710 , DRA712 , DRA714 , DRA716 , DRA718 , DRA722 , DRA724 , DRA725 , DRA726 , DRA745 , DRA746 , DRA74P , DRA750 , DRA756 , DRA75P , DRA76P , DRA77P , DRA780 , DRA781 , DRA782 , DRA783 , DRA786 , DRA787 , DRA790 , DRA791 , DRA793 , DRA797 , TDA2EG-17 , TDA2HF , TDA2HG , TDA2HV , TDA2LF , TDA2P-ABZ , TDA2P-ACD , TDA2SA , TDA2SG , TDA2SX

 

  1.   Integrating New Cameras With Video Input Port on DRA7xx SoCs
    1.     Trademarks
    2. 1 Introduction
    3. 2 Video Input Port and Possible Video Sources
    4. 3 Kernel Changes to Integrate Camera Devices
      1. 3.1 V4L2 Endpoint Framework
        1. 3.1.1 VIP Device Definition
        2. 3.1.2 Camera Device Definition
      2. 3.2 Interfacing a Multichannel Video Source (TVP5158)
      3. 3.3 Interfacing a Camera Over LVDS Serializer Deserializer
        1. 3.3.1 I2C Address Remapping
        2. 3.3.2 Serializer/Deserializer Configuration
        3. 3.3.3 Serdes Device Definition
      4. 3.4 Setting up Pinmux and IODELAY
        1. 3.4.1 Getting Pinmux and IODELAY Values
      5. 3.5 Setting Up Board Muxes

Interfacing a Multichannel Video Source (TVP5158)

Most automotive use cases need to interface multiple cameras to the SoC. This can be achieved by connecting multiple cameras to the different ports. The problem with this approach is that, for every camera connected, at least 10 pads are used (assuming 8-bit interface). Most of the pads are muxed between video ports and other interfaces like ethernet, audio, gpmc, and so forth. When connecting multiple cameras this way, some of the functionality needs to be compromised. This can be avoided when using multichannel capture; In that, multiple video sources are time multiplexed and sent via only one video port. For example, TVP5158 is a TI analog video decoder chip that supports multiplexing. The VIP parser is capable of de-multiplexing up to 16 different channels from one video port. This is done using embedded sync BT656 protocol.

V4L2 framework does not support multichannel capture. There is no option to select a specific channel via a video device. Also, the application might become complex when it has to handle all the channels through the same video device. Current implementation of multichannel capture support for VIP driver registers one video device per channel. For four channel capture, the driver registers /dev/video1, /dev/video2, /dev/video3, /dev/video4. In this case, driver maps all the video devices to the same port and each of them can be used independently. Another advantage with this approach is that this allows multiple applications to handle each channel separately.

Figure 2 shows how the 4 channel capture is realized for the VIP and TVP5158 on DRA7xx-EVM.

jamr3_app_bd.gifFigure 2. Block Diagram of Multichannel Video Source Integration