From: Michael Riesch <michael.riesch@wolfvision.net>
To: Mehdi Djait <mehdi.djait@bootlin.com>,
mchehab@kernel.org, heiko@sntech.de, hverkuil-cisco@xs4all.nl,
krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org,
conor+dt@kernel.org
Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, thomas.petazzoni@bootlin.com,
alexandre.belloni@bootlin.com, maxime.chevallier@bootlin.com,
paul.kocialkowski@bootlin.com
Subject: Re: [PATCH v11 1/3] media: dt-bindings: media: add bindings for Rockchip CIF
Date: Fri, 17 Nov 2023 13:15:52 +0100 [thread overview]
Message-ID: <431375a9-4f62-419c-9ad7-90f3cf892181@wolfvision.net> (raw)
In-Reply-To: <a0af1d30e79fb1f2567297c951781996836d6db6.1700132457.git.mehdi.djait@bootlin.com>
Hi Mehdi,
On 11/16/23 12:04, Mehdi Djait wrote:
> Add a documentation for the Rockchip Camera Interface binding.
>
> Signed-off-by: Mehdi Djait <mehdi.djait@bootlin.com>
> ---
> .../bindings/media/rockchip,px30-vip.yaml | 173 ++++++++++++++++++
> 1 file changed, 173 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml
>
> diff --git a/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml
> new file mode 100644
> index 000000000000..580ed654000c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/rockchip,px30-vip.yaml
> @@ -0,0 +1,173 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/media/rockchip,px30-vip.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Rockchip CIF Camera Interface
May I suggest "Rockchip Camera Interface (CIF)"?
> +
> +maintainers:
> + - Mehdi Djait <mehdi.djait@bootlin.com>
> +
> +description:
> + CIF is a camera interface present on some rockchip SoCs. It receives the data
s/rockchip/Rockchip
> + from Camera sensor or CCIR656 encoder and transfers it into system main memory
> + by AXI bus.
> +
> +properties:
> + compatible:
> + const: rockchip,px30-vip
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + items:
> + - description: ACLK
> + - description: HCLK
> + - description: PCLK
> +
> + clock-names:
> + items:
> + - const: aclk
> + - const: hclk
> + - const: pclk
> +
> + resets:
> + items:
> + - description: AXI
> + - description: AHB
> + - description: PCLK IN
> +
> + reset-names:
> + items:
> + - const: axi
> + - const: ahb
> + - const: pclkin
> +
> + power-domains:
> + maxItems: 1
> +
> + ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> +
> + properties:
> + port@0:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + unevaluatedProperties: false
> + description: input port on the parallel interface
In more recent Rockchip SoCs this seems to be described as "DVP
interface (digital parallel input)". Maybe we could use this description
here as well?
> +
> + properties:
> + endpoint:
> + $ref: video-interfaces.yaml#
> + unevaluatedProperties: false
> +
> + properties:
> + bus-type:
> + enum: [5, 6]
Not sure whether this is possible, but if we could use the
MEDIA_BUS_TYPE_PARALLEL and MEDIA_BUS_TYPE_BT656 defines here it would
be way more descriptive.
> +
> + required:
> + - bus-type
> +
> + required:
> + - port@0
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - clocks
> + - ports
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/clock/px30-cru.h>
> + #include <dt-bindings/display/sdtv-standards.h>
> + #include <dt-bindings/gpio/gpio.h>
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/media/video-interfaces.h>
> + #include <dt-bindings/power/px30-power.h>
> +
> + parent {
> + #address-cells = <2>;
> + #size-cells = <2>;
> +
> + video-capture@ff490000 {
> + compatible = "rockchip,px30-vip";
> + reg = <0x0 0xff490000 0x0 0x200>;
> + interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&cru ACLK_CIF>, <&cru HCLK_CIF>, <&cru PCLK_CIF>;
> + clock-names = "aclk", "hclk", "pclk";
> + resets = <&cru SRST_CIF_A>, <&cru SRST_CIF_H>, <&cru SRST_CIF_PCLKIN>;
> + reset-names = "axi", "ahb", "pclkin";
> + power-domains = <&power PX30_PD_VI>;
Sort alphabetically: power-domains before resets.
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> +
> + cif_in: endpoint {
> + remote-endpoint = <&tw9900_out>;
> + bus-type = <MEDIA_BUS_TYPE_BT656>;
> + };
> + };
> + };
> + };
> +
> + composite_connector {
> + compatible = "composite-video-connector";
> + label = "tv";
> + sdtv-standards = <(SDTV_STD_PAL | SDTV_STD_NTSC)>;
> +
> + port {
> + composite_to_tw9900: endpoint {
> + remote-endpoint = <&tw9900_to_composite>;
> + };
> + };
> + };
> +
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + video-decoder@44 {
> + compatible = "techwell,tw9900";
> + reg = <0x44>;
> +
> + vdd-supply = <&tw9900_supply>;
> + reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>;
This goes before vdd-supply (alphabetical sorting). No need for blank
lines between the properties.
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + reg = <0>;
I think reg property goes first, then the others. No blank lines between
properties, but one blank line between properties and nodes.
> + tw9900_to_composite: endpoint@0 {
> + reg = <0>;
> + remote-endpoint = <&composite_to_tw9900>;
> + };
> + };
> +
> + port@1 {
> + reg = <1>;
Same here.
> + tw9900_out: endpoint {
> + remote-endpoint = <&cif_in>;
> + };
> + };
> + };
> + };
> + };
> + };
> +...
With the inline comments addressed,
Reviewed-by: Michael Riesch <michael.riesch@wolfvision.net>
Thanks for your efforts!
Best regards,
Michael
next prev parent reply other threads:[~2023-11-17 12:16 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-16 11:04 [PATCH v11 0/3] media: rockchip: Add a driver for Rockchip's camera interface Mehdi Djait
2023-11-16 11:04 ` [PATCH v11 1/3] media: dt-bindings: media: add bindings for Rockchip CIF Mehdi Djait
2023-11-16 12:26 ` Rob Herring
2023-11-16 17:58 ` Conor Dooley
2023-11-16 18:01 ` Conor Dooley
2023-11-17 12:15 ` Michael Riesch [this message]
2023-11-16 11:04 ` [PATCH v11 2/3] media: rockchip: Add a driver for Rockchip's camera interface Mehdi Djait
2023-11-17 0:52 ` kernel test robot
2023-11-17 22:25 ` Michael Riesch
2023-11-18 21:35 ` kernel test robot
2023-11-21 10:05 ` Michael Riesch
2023-11-21 18:41 ` Tommaso Merciai
2023-11-22 12:42 ` Michael Riesch
2023-11-22 13:19 ` Paul Kocialkowski
2023-11-22 14:02 ` Mehdi Djait
2023-11-22 13:33 ` Tommaso Merciai
2023-11-22 13:39 ` Michael Riesch
2023-11-29 15:34 ` Paul Kocialkowski
2023-11-16 11:04 ` [PATCH v11 3/3] arm64: dts: rockchip: Add the " Mehdi Djait
2023-11-17 12:18 ` Michael Riesch
2023-11-17 13:19 ` Paul Kocialkowski
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=431375a9-4f62-419c-9ad7-90f3cf892181@wolfvision.net \
--to=michael.riesch@wolfvision.net \
--cc=alexandre.belloni@bootlin.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=heiko@sntech.de \
--cc=hverkuil-cisco@xs4all.nl \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=maxime.chevallier@bootlin.com \
--cc=mchehab@kernel.org \
--cc=mehdi.djait@bootlin.com \
--cc=paul.kocialkowski@bootlin.com \
--cc=robh+dt@kernel.org \
--cc=thomas.petazzoni@bootlin.com \
/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
all inboxes | Powered by JetHome®