summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Plowman <david.plowman@raspberrypi.com>2022-01-13 14:15:58 +0000
committerKieran Bingham <kieran.bingham@ideasonboard.com>2022-01-19 10:27:07 +0000
commitb2290573c09ca3781fc0577f7785f8398a5780b2 (patch)
tree0f9b0e73dfcdd4df62d41cfb6c14def5da6b27f7
parent7f1e39e3e227ab9e2a80fb47abe397c515d5ba38 (diff)
pipeline: raspberrypi: Simplify calculation of sensor's native Bayer order
Now that the sensor is defined to list mbus codes using its native (untransformed) Bayer order, the method of obtaining it can be simplified. We don't have to try and reset the flips, we just use the value directly from the sensor. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Naushir Patuck <naush@raspberrypi.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--src/libcamera/pipeline/raspberrypi/raspberrypi.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
index 49d7ff23..79cb75c6 100644
--- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
+++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
@@ -1279,8 +1279,8 @@ int PipelineHandlerRPi::registerCamera(MediaDevice *unicam, MediaDevice *isp, Me
* Thirdly, what is the "native" Bayer order, when no transforms are
* applied?
*
- * As part of answering the final question, we reset the camera to
- * no transform at all.
+ * We note that the sensor's cached list of supported formats is
+ * already in the "native" order, with any flips having been undone.
*/
const V4L2Subdevice *sensor = data->sensor_->device();
const struct v4l2_query_ext_ctrl *hflipCtrl = sensor->controlInfo(V4L2_CID_HFLIP);
@@ -1288,11 +1288,6 @@ int PipelineHandlerRPi::registerCamera(MediaDevice *unicam, MediaDevice *isp, Me
/* We assume it will support vflips too... */
data->supportsFlips_ = true;
data->flipsAlterBayerOrder_ = hflipCtrl->flags & V4L2_CTRL_FLAG_MODIFY_LAYOUT;
-
- ControlList ctrls(data->sensor_->controls());
- ctrls.set(V4L2_CID_HFLIP, 0);
- ctrls.set(V4L2_CID_VFLIP, 0);
- data->setSensorControls(ctrls);
}
/* Look for a valid Bayer format. */