[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250718-fpf-media-dt-flip-v1-2-75b3a938b4be@pengutronix.de>
Date: Wed, 23 Jul 2025 10:58:30 +0200
From: Fabian Pfitzner <f.pfitzner@...gutronix.de>
To: Mauro Carvalho Chehab <mchehab@...nel.org>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Jacopo Mondi <jacopo@...ndi.org>,
Sakari Ailus <sakari.ailus@...ux.intel.com>
Cc: linux-media@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, entwicklung@...gutronix.de,
Fabian Pfitzner <f.pfitzner@...gutronix.de>
Subject: [PATCH 2/2] media: v4l: fwnode: parse horizontal/vertical flip
properties
There are cameras containing a mirror on their optical path e. g. when
mounted upside down.
Introduce two options to change the device's flip property via device tree.
As there is already support for the panel-common driver [1], add it for cameras as well.
[1] commit 3c0ecd83eee9 ("dt-bindings: display: panel: Move flip properties to panel-common")
Signed-off-by: Fabian Pfitzner <f.pfitzner@...gutronix.de>
---
drivers/media/v4l2-core/v4l2-fwnode.c | 3 +++
include/media/v4l2-fwnode.h | 4 ++++
2 files changed, 7 insertions(+)
diff --git a/drivers/media/v4l2-core/v4l2-fwnode.c b/drivers/media/v4l2-core/v4l2-fwnode.c
index cb153ce42c45d..7fd0936fbda80 100644
--- a/drivers/media/v4l2-core/v4l2-fwnode.c
+++ b/drivers/media/v4l2-core/v4l2-fwnode.c
@@ -845,6 +845,9 @@ int v4l2_fwnode_device_parse(struct device *dev,
dev_dbg(dev, "device rotation: %u\n", val);
}
+ props->hflip = fwnode_property_read_bool(fwnode, "flip-horizontal");
+ props->vflip = fwnode_property_read_bool(fwnode, "flip-vertical");
+
return 0;
}
EXPORT_SYMBOL_GPL(v4l2_fwnode_device_parse);
diff --git a/include/media/v4l2-fwnode.h b/include/media/v4l2-fwnode.h
index f7c57c7765898..f8a51ab8317ae 100644
--- a/include/media/v4l2-fwnode.h
+++ b/include/media/v4l2-fwnode.h
@@ -75,10 +75,14 @@ enum v4l2_fwnode_orientation {
* struct v4l2_fwnode_device_properties - fwnode device properties
* @orientation: device orientation. See &enum v4l2_fwnode_orientation
* @rotation: device rotation
+ * @hflip: device horizontal flip
+ * @vflip: device vertical flip
*/
struct v4l2_fwnode_device_properties {
enum v4l2_fwnode_orientation orientation;
unsigned int rotation;
+ bool hflip;
+ bool vflip;
};
/**
--
2.39.5
Powered by blists - more mailing lists