@@ -39,6 +39,7 @@ controls_map = {
'draft': 'control_ids_draft.yaml',
'rpi/pisp': 'control_ids_rpi.yaml',
'rpi/vc4': 'control_ids_rpi.yaml',
+ 'rkisp1': 'control_ids_rkisp1.yaml',
},
'properties': {
new file mode 100644
@@ -0,0 +1,24 @@
+# SPDX-License-Identifier: LGPL-2.1-or-later
+#
+# Copyright (C) 2025, Ideas On Board
+#
+# RkISP1 specific control definitions
+---
+# Unless otherwise stated, all controls are bi-directional, i.e. they can be
+# set through Request::controls() and returned out through Request::metadata().
+vendor: rkisp1
+controls:
+ # --- RkISP1 DPF controls ---
+ - DpfEnable:
+ type: bool
+ direction: inout
+ description: |
+ Enable or disable the Denoise Pre-Filter (DPF) block.
+
+ When disabled (false) the hardware DPF is forced off regardless of
+ tuning or ISO level selection. When enabled (true) the algorithm may
+ program parameters and adapt them per ISO band or manual overrides.
+
+ Reported in metadata as a boolean.
+
+...
@@ -15,6 +15,8 @@ ranges:
rpi: 20000
# Controls for debug metadata
debug: 30000
- # Next range starts at 40000
+ # RkISP1 vendor controls
+ rkisp1: 40000
+ # Next range starts at 50000
...
Reserve the next free vendor allocation for rkisp1 and add the dedicated control_ids_rkisp1.yaml. Hook the new YAML into the Meson build so the generated control headers expose the rkisp1 control namespace. Signed-off-by: Rui Wang <rui.wang@ideasonboard.com> --- include/libcamera/meson.build | 1 + src/libcamera/control_ids_rkisp1.yaml | 24 ++++++++++++++++++++++++ src/libcamera/control_ranges.yaml | 4 +++- 3 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 src/libcamera/control_ids_rkisp1.yaml