From: Paul Elder <paul.elder@ideasonboard.com>
To: linux-media@vger.kernel.org
Cc: Paul Elder <paul.elder@ideasonboard.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Conor Dooley <conor+dt@kernel.org>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Hans Verkuil <hverkuil-cisco@xs4all.nl>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 1/3] dt-bindings: media: Add THine THP7312 ISP
Date: Wed, 6 Sep 2023 08:31:16 +0900 [thread overview]
Message-ID: <20230905233118.183140-2-paul.elder@ideasonboard.com> (raw)
In-Reply-To: <20230905233118.183140-1-paul.elder@ideasonboard.com>
Add bindings for the THine THP7312 ISP.
Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
---
Since the THP7312 supports multiple sensors, thine,rx-data-lanes alone
might not be enough. I was consdering using sensor nodes like what the
AP1302 does [1]. This way we can also move the power supplies that only
concern the sensor in there as well. I was wondering what to do about
the model name, though, as the thp7312 completely isolates that from the
rest of the system.
I'm planning to add sensor nodes in somehow in a v2.
[1] https://lore.kernel.org/linux-media/20211006113254.3470-2-anil.mamidala@xilinx.com/
.../bindings/media/thine,thp7312.yaml | 170 ++++++++++++++++++
1 file changed, 170 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/thine,thp7312.yaml
diff --git a/Documentation/devicetree/bindings/media/thine,thp7312.yaml b/Documentation/devicetree/bindings/media/thine,thp7312.yaml
new file mode 100644
index 000000000000..e8d203dcda81
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/thine,thp7312.yaml
@@ -0,0 +1,170 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (c) 2023 Ideas on Board
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/thine,thp7312.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: THine THP7312
+
+maintainers:
+ - Paul Elder <paul.elder@@ideasonboard.com>
+
+description:
+ The THP7312 is a standalone ISP controlled over i2c, and is capable of
+ various image processing and correction functions, including 3A control. It
+ can be connected to CMOS image sensors from various vendors, supporting both
+ MIPI CSI-2 and parallel interfaces. It can also output on either MIPI CSI-2
+ or parallel. The hardware is capable of transmitting and receiving MIPI
+ interlaved data strams with data types or multiple virtual channel
+ identifiers.
+
+allOf:
+ - $ref: ../video-interface-devices.yaml#
+
+properties:
+ compatible:
+ const: thine,thp7312
+
+ reg:
+ description: I2C device address
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+ - description: CLKI clock input
+
+ reset-gpios:
+ maxItems: 1
+ description: |-
+ Reference to the GPIO connected to the RESET_N pin, if any.
+ Must be released (set high) after all supplies are applied.
+
+ vddcore-supply:
+ description:
+ 1.2V supply for core, PLL, MIPI rx and MIPI tx.
+
+ vhtermnx-supply:
+ description:
+ Supply for input (rx). 1.8V for MIPI, or 1.8/2.8/3.3V for parallel.
+
+ vddtx-supply:
+ description:
+ Supply for output (tx). 1.8V for MIPI, or 1.8/2.8/3.3V for parallel.
+
+ vddhost-supply:
+ description:
+ Supply for host interface. 1.8V, 2.8V, or 3.3V.
+
+ vddcmos-supply:
+ description:
+ Supply for sensor interface. 1.8V, 2.8V, or 3.3V.
+
+ vddgpio_0-supply:
+ description:
+ Supply for GPIO_0. 1.8V, 2.8V, or 3.3V.
+
+ vddgpio_1-supply:
+ description:
+ Supply for GPIO_1. 1.8V, 2.8V, or 3.3V.
+
+ DOVDD-supply:
+ description:
+ Digital I/O (1.8V) supply for image sensor.
+
+ AVDD-supply:
+ description:
+ Analog (2.8V) supply for image sensor.
+
+ DVDD-supply:
+ description:
+ Digital Core (1.2V) supply for image sensor.
+
+ orientation: true
+ rotation: true
+
+ thine,rx,data-lanes:
+ minItems: 4
+ maxItems: 4
+ $ref: /schemas/media/video-interfaces.yaml#data-lanes
+ description: |-
+ This property is for lane reordering between the THP7312 and the imaging
+ sensor that it is connected to.
+
+ port:
+ $ref: /schemas/graph.yaml#/$defs/port-base
+ additionalProperties: false
+
+ properties:
+ endpoint:
+ $ref: /schemas/media/video-interfaces.yaml#
+ unevaluatedProperties: false
+
+ properties:
+ data-lanes:
+ description: |-
+ The sensor supports either two-lane, or four-lane operation.
+ This property is for lane reordering between the THP7312 and
+ the SoC. If this property is omitted four-lane operation is
+ assumed. For two-lane operation the property must be set to <1 2>.
+ minItems: 2
+ maxItems: 4
+ items:
+ maximum: 4
+
+required:
+ - compatible
+ - reg
+ - reset-gpios
+ - clocks
+ - vddcore-supply
+ - vhtermrx-supply
+ - vddtx-supply
+ - vddhost-supply
+ - vddcmos-supply
+ - vddgpio_0-supply
+ - vddgpio_1-supply
+ - DOVDD-supply
+ - AVDD-supply
+ - DVDD-supply
+ - thine,rx,data-lanes
+ - port
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/gpio/gpio.h>
+
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ camera@61 {
+ compatible = "thine,thp7312";
+ reg = <0x61>;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&cam1_pins_default>;
+
+ reset-gpios = <&pio 119 GPIO_ACTIVE_LOW>;
+ clocks = <&camera61_clk>;
+
+ vddcore-supply = <&vsys_v4p2>;
+ AVDD-supply = <&vsys_v4p2>;
+ DVDD-supply = <&vsys_v4p2>;
+
+ orientation = <0>;
+ rotation = <0>;
+
+ thine,rx,data-lanes = <4 1 3 2>;
+
+ port {
+ thp7312_2_endpoint: endpoint {
+ remote-endpoint = <&mipi_thp7312_2>;
+ data-lanes = <4 2 1 3>;
+ };
+ };
+ };
+ };
+...
--
2.39.2
next prev parent reply other threads:[~2023-09-05 23:31 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-05 23:31 [PATCH 0/3] media: i2c: Add driver for THine THP7312 ISP Paul Elder
2023-09-05 23:31 ` Paul Elder [this message]
2023-09-06 0:10 ` [PATCH 1/3] dt-bindings: media: Add " Rob Herring
2023-09-06 7:18 ` Krzysztof Kozlowski
2023-09-06 8:15 ` Laurent Pinchart
2023-09-07 14:49 ` Paul Elder
2023-09-07 14:56 ` Laurent Pinchart
2023-09-07 14:53 ` Paul Elder
2023-09-05 23:31 ` [PATCH 2/3] media: i2c: Add driver for THine THP7312 Paul Elder
2023-09-06 7:25 ` Krzysztof Kozlowski
2023-09-06 9:03 ` Laurent Pinchart
2023-09-06 10:50 ` Dave Stevenson
2023-09-07 14:54 ` Paul Elder
2023-09-06 10:58 ` Laurent Pinchart
2023-09-05 23:31 ` [PATCH 3/3] arm64: dts: mediatek: mt8365-pumpkin: Add overlays for thp7312 cameras Paul Elder
2023-09-06 7:27 ` Krzysztof Kozlowski
2023-09-06 8:32 ` Laurent Pinchart
2023-09-06 8:48 ` Krzysztof Kozlowski
2023-09-06 9:00 ` Laurent Pinchart
2023-09-06 9:21 ` Krzysztof Kozlowski
2023-09-06 9:35 ` Laurent Pinchart
2023-09-06 11:01 ` Kieran Bingham
2023-09-06 11:14 ` Laurent Pinchart
2023-09-07 14:55 ` Paul Elder
2023-09-07 15:04 ` Laurent Pinchart
2023-09-07 15:04 ` Laurent Pinchart
2023-09-08 20:52 ` Rob Herring
2023-09-09 15:37 ` Laurent Pinchart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230905233118.183140-2-paul.elder@ideasonboard.com \
--to=paul.elder@ideasonboard.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=hverkuil-cisco@xs4all.nl \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=robh+dt@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).