[v2,0/4] software_isp: Implement DMABuf import for input buffers
mbox series

Message ID 20260518201508.140849-1-robert.mader@collabora.com
Headers show
Series
  • software_isp: Implement DMABuf import for input buffers
Related show

Message

Robert Mader May 18, 2026, 8:15 p.m. UTC
From the main commit:
In many cases we can import the GPU-ISP input buffer, a dmabuf from v4l2,
directly into EGL instead of mapping and uploading - i.e. copying - it.
This reduces memory bandwidth and CPU usage and can slightly improve
latency.

Notes: Previous iterations of these patches have already been tested on
various platforms, without known regressions and showing significant
improvements.

Changes in v2:
- Instead of adding parameters to createInputDMABufTexture2D(), remove
  them from createTexture2D instead.
- Use std::optional<DmaSyncer> to make the code easier to understand.
- Move error log level change into its own commit.

Robert Mader (4):
  egl: Set more eGLImage paramters in constructor
  egl: Demote an error log to debug
  debayer_egl: Implement dmabuf import for input buffers
  debayer_egl: Sync output buffer after processing stats

 include/libcamera/internal/egl.h           |  7 ++--
 src/libcamera/egl.cpp                      | 31 ++++++++++----
 src/libcamera/software_isp/debayer_egl.cpp | 49 ++++++++++++----------
 src/libcamera/software_isp/debayer_egl.h   |  2 +-
 4 files changed, 55 insertions(+), 34 deletions(-)