[v2,0/7] Remove RkISP1FrameInfo and IPU3Frames classes
mbox series

Message ID 20240220164317.998477-1-dan.scally@ideasonboard.com
Headers show
Series
  • Remove RkISP1FrameInfo and IPU3Frames classes
Related show

Message

Dan Scally Feb. 20, 2024, 4:43 p.m. UTC
Hello all

This series represents further work on removing the RkISP1FrameInfo and
IPU3Frames classes. These exist to track the "state" of a Request so that the
pipeline handlers can decide whether or not it can be completed already, but it
seems like we should be able to remove it and just re-factor the functionality
out into the rest of the pipeline handler whilst relying on a new concept of
"internal" buffers in Request::Private to track completion status of a Request.

Quick reviews would be deeply appreciated so we can unblock other work that
relies on this. I'm particularly interested in whether the concept of internal
buffers for Requests is acceptable, or if the consensus is that tracking of
whether a pipeline is ready to complete a request should live there instead.

Thanks
Dan

Daniel Scally (7):
  libcamera: request: Introduce internal buffers
  libcamera: camera: Turn queuedRequests_ to a map
  libcamera: rkisp1: Track request->sequence() instead of frame_
  libcamera: rkisp1: Switch tryCompleteRequest() to use Request *
  libcamera: rkisp1: Remove RkISP1FrameInfo
  libcamera: rkisp1: Remove tryCompleteRequest function
  libcamera: ipu3: Remove IPU3Frames

 include/libcamera/internal/camera.h      |   4 +-
 include/libcamera/internal/request.h     |  12 +
 src/libcamera/camera.cpp                 |   4 +-
 src/libcamera/pipeline/ipu3/cio2.cpp     |   3 +-
 src/libcamera/pipeline/ipu3/cio2.h       |   2 +-
 src/libcamera/pipeline/ipu3/frames.cpp   | 143 -----------
 src/libcamera/pipeline/ipu3/frames.h     |  67 -----
 src/libcamera/pipeline/ipu3/ipu3.cpp     | 203 +++++++++------
 src/libcamera/pipeline/ipu3/meson.build  |   1 -
 src/libcamera/pipeline/rkisp1/rkisp1.cpp | 313 ++++++-----------------
 src/libcamera/pipeline_handler.cpp       |  21 +-
 src/libcamera/request.cpp                |  93 ++++++-
 12 files changed, 322 insertions(+), 544 deletions(-)
 delete mode 100644 src/libcamera/pipeline/ipu3/frames.cpp
 delete mode 100644 src/libcamera/pipeline/ipu3/frames.h