This is a list of things that need to be done to get this driver out of the
staging directory.

- Request API conversion. Remove of the dual pipeline and associate buffers
  as well as formats and the binary used to a request. Remove the
  opportunistic buffer management. (Sakari)

- IPU3 driver documentation (Laurent)
  Comments on configuring v4l2 subdevs for CIO2 and ImgU.

- Elaborate the functionality of different selection rectangles in driver
  documentation. This may require driver changes as well.
