From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-14.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED,USER_AGENT_NEOMUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 49763C43381 for ; Tue, 26 Mar 2019 12:17:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 22AAD20830 for ; Tue, 26 Mar 2019 12:17:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731471AbfCZMRj (ORCPT ); Tue, 26 Mar 2019 08:17:39 -0400 Received: from retiisi.org.uk ([95.216.213.190]:42202 "EHLO hillosipuli.retiisi.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725776AbfCZMRj (ORCPT ); Tue, 26 Mar 2019 08:17:39 -0400 Received: from valkosipuli.localdomain (valkosipuli.retiisi.org.uk [IPv6:2a01:4f9:c010:4572::80:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by hillosipuli.retiisi.org.uk (Postfix) with ESMTPS id 301F7634C7B; Tue, 26 Mar 2019 14:17:31 +0200 (EET) Received: from sailus by valkosipuli.localdomain with local (Exim 4.89) (envelope-from ) id 1h8l1H-0000Jz-U0; Tue, 26 Mar 2019 14:17:31 +0200 Date: Tue, 26 Mar 2019 14:17:31 +0200 From: Sakari Ailus To: Mickael Guene Cc: linux-media@vger.kernel.org, hugues.fruchet@st.com, Mauro Carvalho Chehab , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, "David S. Miller" , Nicolas Ferre , Rob Herring , Greg Kroah-Hartman , Mark Rutland Subject: Re: [PATCH v3 1/2] dt-bindings: Document MIPID02 bindings Message-ID: <20190326121731.m7z5o2jbzlfxalu6@valkosipuli.retiisi.org.uk> References: <1552373045-134493-1-git-send-email-mickael.guene@st.com> <1553594620-88280-1-git-send-email-mickael.guene@st.com> <1553594620-88280-2-git-send-email-mickael.guene@st.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1553594620-88280-2-git-send-email-mickael.guene@st.com> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Mickael, On Tue, Mar 26, 2019 at 11:03:39AM +0100, Mickael Guene wrote: > This adds documentation of device tree for MIPID02 CSI-2 to PARALLEL > bridge. > > Signed-off-by: Mickael Guene > --- > > Changes in v3: None > Changes in v2: > - Add precision about first CSI-2 port data rate > - Document endpoints supported properties > - Rename 'mipid02@14' into generic 'csi2rx@14' in example > > .../bindings/media/i2c/st,st-mipid02.txt | 83 ++++++++++++++++++++++ > MAINTAINERS | 7 ++ > 2 files changed, 90 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/st,st-mipid02.txt > > diff --git a/Documentation/devicetree/bindings/media/i2c/st,st-mipid02.txt b/Documentation/devicetree/bindings/media/i2c/st,st-mipid02.txt > new file mode 100644 > index 0000000..dfeab45 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/st,st-mipid02.txt > @@ -0,0 +1,83 @@ > +STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge > + > +MIPID02 has two CSI-2 input ports, only one of those ports can be active at a > +time. Active port input stream will be de-serialized and its content outputted > +through PARALLEL output port. > +CSI-2 first input port is a dual lane 800Mbps per lane whereas CSI-2 second > +input port is a single lane 800Mbps. Both ports support clock and data lane > +polarity swap. First port also supports data lane swap. > +PARALLEL output port has a maximum width of 12 bits. > +Supported formats are RAW6, RAW7, RAW8, RAW10, RAW12, RGB565, RGB888, RGB444, > +YUV420 8-bit, YUV422 8-bit and YUV420 10-bit. > + > +Required Properties: > +- compatible: should be "st,st-mipid02" > +- clocks: reference to the xclk input clock. > +- clock-names: should be "xclk". > +- VDDE-supply: sensor digital IO supply. Must be 1.8 volts. > +- VDDIN-supply: sensor internal regulator supply. Must be 1.8 volts. > + > +Optional Properties: > +- reset-gpios: reference to the GPIO connected to the xsdn pin, if any. > + This is an active low signal to the mipid02. > + > +Required subnodes: > + - ports: A ports node with one port child node per device input and output > + port, in accordance with the video interface bindings defined in > + Documentation/devicetree/bindings/media/video-interfaces.txt. The > + port nodes are numbered as follows: > + > + Port Description > + ----------------------------- > + 0 CSI-2 first input port > + 1 CSI-2 second input port > + 2 PARALLEL output > + > +Endpoint node optional properties for CSI-2 connection are: > +- bus-type: if present should be 4 - MIPI CSI-2 D-PHY. You can drop this IMO --- there's just a single valid value so the driver may know that. > +- clock-lanes: should be set to <0> if present (clock lane on hardware lane 0). And please omit this, too, if the clock lane is always 0. Please update the example, too. The driver doesn't need to check that either IMO, but up to you. > +- data-lanes: if present should be <1> for Port 1. for Port 0 dual-lane > +operation should be <1 2> or <2 1>. For Port 0 single-lane operation should be > +<1> or <2>. > +- lane-polarities: any lane can be inverted. > + > +Endpoint node optional properties for PARALLEL connection are: > +- bus-type: if present should be 5 - Parallel. This, too, can be omitted. > +- bus-width: shall be set to <6>, <7>, <8>, <10> or <12>. > +- hsync-active: active state of the HSYNC signal, 0/1 for LOW/HIGH respectively. > +- vsync-active: active state of the VSYNC signal, 0/1 for LOW/HIGH respectively. If these are optional, what are the defaults? IMO you could make them mandatory as well. > + > +Example: > + > +mipid02: csi2rx@14 { > + compatible = "st,st-mipid02"; > + reg = <0x14>; > + status = "okay"; > + clocks = <&clk_ext_camera_12>; > + clock-names = "xclk"; > + VDDE-supply = <&vdd>; > + VDDIN-supply = <&vdd>; > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + port@0 { > + reg = <0>; > + > + ep0: endpoint { > + clock-lanes = <0>; > + data-lanes = <1 2>; > + remote-endpoint = <&mipi_csi2_in>; > + }; > + }; > + port@2 { > + reg = <2>; > + > + ep2: endpoint { > + bus-width = <8>; > + hsync-active = <0>; > + vsync-active = <0>; > + remote-endpoint = <¶llel_out>; > + }; > + }; > + }; > +}; > diff --git a/MAINTAINERS b/MAINTAINERS > index e17ebf7..74da99d 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -14668,6 +14668,13 @@ S: Maintained > F: drivers/iio/imu/st_lsm6dsx/ > F: Documentation/devicetree/bindings/iio/imu/st_lsm6dsx.txt > > +ST MIPID02 CSI-2 TO PARALLEL BRIDGE DRIVER > +M: Mickael Guene > +L: linux-media@vger.kernel.org > +T: git git://linuxtv.org/media_tree.git > +S: Maintained > +F: Documentation/devicetree/bindings/media/i2c/st,st-mipid02.txt > + > ST STM32 I2C/SMBUS DRIVER > M: Pierre-Yves MORDRET > L: linux-i2c@vger.kernel.org -- Kind regards, Sakari Ailus