Skip to content
  • Aurélien Zanelli's avatar
    v4l2bufferpool: fix import_userptr() in single-planar API when n_planes > 1 · 600027a1
    Aurélien Zanelli authored
    In the V4L2 single-planar API, when format is semi-planar/planar,
    drivers expect the planes to be contiguous in memory.
    So this commit change the way we handle semi-planar/planar format
    (n_planes > 1) when we use the single-planar API (group->n_mem == 1).
    
    To check that planes are contiguous and have expected size, ie: no
    padding. We test the fact that plane 'i' start address + plane 'i'
    expected size equals to plane 'i + 1' start address. If not, we return
    in error.
    
    Math are done in bufferpool rather than in allocator because the
    former is aware of video info.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=738013
    600027a1