[libcamera-devel] [PATCH v4 0/6] IPU3 Debug Improvements
Kieran Bingham
kieran.bingham at ideasonboard.com
Tue Apr 20 15:07:35 CEST 2021
This is 'very loosely' the next iteration of my earlier IPU3 debug
improvements series as it contains a reimplementation of the Request
Canary (by implementing Extensible Requests), a new version of
libcamera: camera: Assert pipelines complete all requests
and a repost of:
libcamera: pipeline: ipu3: frames: Fail if the FrameInfo can't be found
which is further joined by the equivalent change in the RKISP1.
Furthermore, buffers now have a method to be able to mark them as
cancelled if they are not used, allowing pipeline handlers to ensure
buffer statuses are correctly set when the buffers don't actually get
sent to hardware for any reason. This is used by the IPU3 to make sure
when buffers are cancelled by the time they complete on the CIO2, and
they don't get queued to the IMGU, they are marked accordingly.
Finally, the internal logging mechanism for assertions is extended to
report the function the assertion occurs in ... simply because it helps
identify the issue quicker. Of course this information can be located by
following the lines reported to the assertion, but it helps in the
initial understanding of the report.
Kieran Bingham (6):
libcamera: camera: Assert pipelines complete all requests
libcamera: pipeline: ipu3: frames: Fail if the FrameInfo can't be
found
libcamera: pipeline: rkisp1: Fail RkISP1FrameInfo can't be found
libcamera: pipeline: ipu3: Cancel unused buffers
libcamera: internal: log: Report function on asserts
libcamera: request: Make it extensible
include/libcamera/buffer.h | 2 ++
include/libcamera/internal/log.h | 7 ++--
include/libcamera/internal/pipeline_handler.h | 1 +
include/libcamera/request.h | 4 ++-
src/libcamera/buffer.cpp | 8 +++++
src/libcamera/camera.cpp | 2 ++
src/libcamera/pipeline/ipu3/frames.cpp | 6 ++--
src/libcamera/pipeline/ipu3/ipu3.cpp | 7 ++--
src/libcamera/pipeline/rkisp1/rkisp1.cpp | 9 +++--
src/libcamera/pipeline_handler.cpp | 15 ++++++++
src/libcamera/request.cpp | 34 +++++++++++++++++--
11 files changed, 82 insertions(+), 13 deletions(-)
--
2.25.1
More information about the libcamera-devel
mailing list