summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-02-28 22:30:22 +0200
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2024-04-24 19:54:16 +0300
commit8e96bd867d2a277497620589e81e32e09ff1abb7 (patch)
tree8ad6bdc345832c6477a3844c7d591fcad5feaab1 /include
parent5d76dca72e7e311f2c5360d6b21b3b43d602f30c (diff)
libcamera: v4l2_subdevice: Update to the new kernel routing API
The subdev embedded data support series includes a change to the VIDIOC_SUBDEV_G_ROUTING and VIDIOC_SUBDEV_S_ROUTING ioctls that impacts the userspace API. Update to the new API, while preserving backward compatibility to ease the transition. Document the backward compatibility to only be supported for two kernel releases. As the routing API isn't enabled in any upstream kernel yet, users of the API need kernel patches, and are expected to be able to upgrade quickly. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> --- Changes since combined RFC: - Drop -ENOTTY special handling in getRouting() - Preserve backward compatibility for a couple of kernel releases.
Diffstat (limited to 'include')
-rw-r--r--include/libcamera/internal/v4l2_subdevice.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/libcamera/internal/v4l2_subdevice.h b/include/libcamera/internal/v4l2_subdevice.h
index 01ed4c2f..3a5b895b 100644
--- a/include/libcamera/internal/v4l2_subdevice.h
+++ b/include/libcamera/internal/v4l2_subdevice.h
@@ -176,6 +176,9 @@ private:
std::vector<SizeRange> enumPadSizes(const Stream &stream,
unsigned int code);
+ int getRoutingLegacy(Routing *routing, Whence whence);
+ int setRoutingLegacy(Routing *routing, Whence whence);
+
const MediaEntity *entity_;
std::string model_;