• Archit Taneja's avatar
    [media] v4l: ti-vpe: Fix some params in VPE data descriptors · 928bf2ba
    Archit Taneja authored
    Some parameters of the VPE descriptors were understood incorrectly. They are now
    fixed. The fixes are explained as follows:
    
    - When adding an inbound data descriptor to the VPDMA descriptor list, we intend
      to use c_rect as the cropped region fetched by VPDMA. Therefore, c_rect->width
      shouldn't be used to calculate the line stride, the original image width
      should be used for that. We add a 'width' argument which gives the buffer
      width in memory.
    
    - frame_width and frame_height describe the complete width and height of the
      client to which the channel is connected. If there are multiple channels
      fetching data and providing to the same client, the above 2 arguments should
      be the width and height of the region covered by all the channels. In the case
      where there is only one channel providing pixel data to the client
      (like in VPE), frame_width and frame_height should be the cropped width and
      cropped height respectively. The calculation of these params is done in the
      vpe driver now.
    
    - start_h and start_v is also used in the case of multiple channels to describe
      where each channel should start filling pixel data. We don't use this in VPE,
      and pass 0s to the vpdma_add_in_dtd() helper.
    
    - Some minor changes are made to the vpdma_add_out_dtd() helper. The c_rect
      param is used for specifying the 'composition' target, and 'width'  is added
      to calculate the line stride.
    Signed-off-by: default avatarArchit Taneja <archit@ti.com>
    Acked-by: default avatarKamil Debski <k.debski@samsung.com>
    Signed-off-by: default avatarKamil Debski <k.debski@samsung.com>
    Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
    928bf2ba
vpdma.c 23.1 KB