From patchwork Mon Oct 19 14:49:23 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rui Miguel Silva X-Patchwork-Id: 286183 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=-17.2 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HK_RANDOM_FROM,INCLUDES_PATCH, MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT 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 A3B02C433E7 for ; Mon, 19 Oct 2020 14:49:37 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 46031222EA for ; Mon, 19 Oct 2020 14:49:37 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="fD/XBT1N" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729752AbgJSOtg (ORCPT ); Mon, 19 Oct 2020 10:49:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44562 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729657AbgJSOtg (ORCPT ); Mon, 19 Oct 2020 10:49:36 -0400 Received: from mail-wr1-x443.google.com (mail-wr1-x443.google.com [IPv6:2a00:1450:4864:20::443]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 43B54C0613CE; Mon, 19 Oct 2020 07:49:36 -0700 (PDT) Received: by mail-wr1-x443.google.com with SMTP id s9so11428wro.8; Mon, 19 Oct 2020 07:49:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=d3nbPOvxpHWZPA9d9pyxPXSzyWn/JPEuTHYor+Ro62k=; b=fD/XBT1No/G0ssdN9xq3ZTUrPrSKoMQAT6rh4sVHTY9c09rupDGwCit2KhXrqsz3+j Q8PXJeoOU5ZWjwdSCJO+Dj8TYltrZjDESAUkb33zwEgHnVoB9gPnIUvfMJq6QP9MN5vA 8NOrTIuqiQOpsueo6Y+ompuTNPdy/0qyB2lnCS+vri+QDRIvE1FEkAST+FfVH3J01DTi 7nw8BsAIeteR0L0YGBqceFbuKbt9WxZC16a48/OtIc2AWkvttveZanQ0DvxDC90gyXge mib7vTwnECVJje0fpY7o+jc+3JSIY0HZ4ynEEHduY15NICi3UyrXyiNKI5eYIsDStyle tgMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=d3nbPOvxpHWZPA9d9pyxPXSzyWn/JPEuTHYor+Ro62k=; b=J8WwtTirJ+uQe8GzrhbnzVMtY0begv1Q/JeHTbMFvsL3ZAMh0FKYPhyxfE3ou0FVve emdk7pyvpB4n3Z3hLSeqxsoorLApJfHDRUa2DpRtXwlBncWaYJoa1/Pjq7uiQ1kcXAtw 1AfcrZghqg4aOCw7MxF3BodM85FdjT0yhds3Yd0iAHTqlu5JX+TK+Sc6WmEcht7lIOlp ZGCTVolkD9SgZM8RiAs9zj3aZpM+bIGcr7ugfVi/KxMH+u9nBOfVO8jMAdtYyj5fK0Xu 7QAZ2Uhnnps/KLkSjqnFL0SynslK8puRBuBhm5y+YuLkuR8NbUcqYgYIy9hQtJ0oQIbc ZSLw== X-Gm-Message-State: AOAM531Wngje/KT1Hd+TFKUWs845pOLnJEh2OA6zeiy2pXo4Fzasvbj0 d5cNtdZol3GV+icKyfsj0h2C3m9CPxE= X-Google-Smtp-Source: ABdhPJyDav4iLQiqCDWjPktHmnEOeWQvt7LOPiQZ4EPUYs9b2BycYgLHhX3k5JnrGJhtFdfI21DFrw== X-Received: by 2002:adf:f3d2:: with SMTP id g18mr19850828wrp.367.1603118974989; Mon, 19 Oct 2020 07:49:34 -0700 (PDT) Received: from arch-thunder.local (a109-49-46-234.cpe.netcabo.pt. [109.49.46.234]) by smtp.gmail.com with ESMTPSA id d4sm18319243wrp.47.2020.10.19.07.49.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Oct 2020 07:49:34 -0700 (PDT) From: Rui Miguel Silva To: Rob Herring , sakari.ailus@linux.intel.com, Hans Verkuil , Jacopo Mondi Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, Rui Miguel Silva , Jacopo Mondi Subject: [PATCH v3 1/3] dt-bindings: ov2680: convert bindings to yaml Date: Mon, 19 Oct 2020 15:49:23 +0100 Message-Id: <20201019144925.1627715-2-rmfrfs@gmail.com> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201019144925.1627715-1-rmfrfs@gmail.com> References: <20201019144925.1627715-1-rmfrfs@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Convert ov2680 sensor bindings documentation to yaml schema, remove the textual bindings document and update MAINTAINERS entry. Signed-off-by: Rui Miguel Silva Reviewed-by: Jacopo Mondi --- v2 -> v3: https://lore.kernel.org/linux-media/20201015144905.4b23k5uy7ycuhvlo@uno.localdomain/ - add prefix ovti to yaml file - remove double space - adjust port properties - fix additional properties - fix end of file line and empty line before ... - add Jacopo Reviewed-by tag .../devicetree/bindings/media/i2c/ov2680.txt | 46 -------- .../bindings/media/i2c/ovti,ov2680.yaml | 101 ++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 102 insertions(+), 47 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/i2c/ov2680.txt create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml diff --git a/Documentation/devicetree/bindings/media/i2c/ov2680.txt b/Documentation/devicetree/bindings/media/i2c/ov2680.txt deleted file mode 100644 index 11e925ed9dad..000000000000 --- a/Documentation/devicetree/bindings/media/i2c/ov2680.txt +++ /dev/null @@ -1,46 +0,0 @@ -* Omnivision OV2680 MIPI CSI-2 sensor - -Required Properties: -- compatible: should be "ovti,ov2680". -- clocks: reference to the xvclk input clock. -- clock-names: should be "xvclk". -- DOVDD-supply: Digital I/O voltage supply. -- DVDD-supply: Digital core voltage supply. -- AVDD-supply: Analog voltage supply. - -Optional Properties: -- reset-gpios: reference to the GPIO connected to the powerdown/reset pin, - if any. This is an active low signal to the OV2680. - -The device node must contain one 'port' child node for its digital output -video port, and this port must have a single endpoint in accordance with - the video interface bindings defined in -Documentation/devicetree/bindings/media/video-interfaces.txt. - -Endpoint node required properties for CSI-2 connection are: -- remote-endpoint: a phandle to the bus receiver's endpoint node. -- clock-lanes: should be set to <0> (clock lane on hardware lane 0). -- data-lanes: should be set to <1> (one CSI-2 lane supported). - -Example: - -&i2c2 { - ov2680: camera-sensor@36 { - compatible = "ovti,ov2680"; - reg = <0x36>; - clocks = <&osc>; - clock-names = "xvclk"; - reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>; - DOVDD-supply = <&sw2_reg>; - DVDD-supply = <&sw2_reg>; - AVDD-supply = <®_peri_3p15v>; - - port { - ov2680_to_mipi: endpoint { - remote-endpoint = <&mipi_from_sensor>; - clock-lanes = <0>; - data-lanes = <1>; - }; - }; - }; -}; diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml new file mode 100644 index 000000000000..68a556365afd --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov2680.yaml @@ -0,0 +1,101 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/ovti,ov2680.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Omnivision OV2680 CMOS Sensor + +maintainers: + - Rui Miguel Silva + +description: |- + The OV2680 color sensor is a low voltage, high performance 1/5 inch UXGA (2 + megapixel) CMOS image sensor that provides a single-chip UXGA (1600 x 1200) + camera. It provides full-frame, sub-sampled, or windowed 10-bit images in + various formats via the control of the Serial Camera Control Bus (SCCB) + interface. The OV2680 has an image array capable of operating at up to 30 + frames per second (fps) in UXGA resolution. + +properties: + compatible: + const: ovti,ov2680 + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + description: + Input clock for the sensor. + items: + - const: xvclk + + reset-gpios: + description: + The phandle and specifier for the GPIO that controls sensor reset. + This corresponds to the hardware pin XSHUTDOWN which is physically + active low. + + dovdd-supply: + description: + Definition of the regulator used as interface power supply. + + avdd-supply: + description: + Definition of the regulator used as analog power supply. + + dvdd-supply: + description: + Definition of the regulator used as digital power supply. + + port: + type: object + description: + A node containing an output port node with an endpoint definition + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + +required: + - compatible + - reg + - clocks + - clock-names + - dovdd-supply + - avdd-supply + - dvdd-supply + - reset-gpios + - port + +additionalProperties: false + +examples: + - | + #include + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + ov2680: camera-sensor@36 { + compatible = "ovti,ov2680"; + reg = <0x36>; + clocks = <&osc>; + clock-names = "xvclk"; + reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>; + + dovdd-supply = <&sw2_reg>; + dvdd-supply = <&sw2_reg>; + avdd-supply = <®_peri_3p15v>; + + port { + ov2680_to_mipi: endpoint { + remote-endpoint = <&mipi_from_sensor>; + }; + }; + }; + }; + +... diff --git a/MAINTAINERS b/MAINTAINERS index f2757c6068e3..2cb2a5c60a1d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -12781,7 +12781,7 @@ M: Rui Miguel Silva L: linux-media@vger.kernel.org S: Maintained T: git git://linuxtv.org/media_tree.git -F: Documentation/devicetree/bindings/media/i2c/ov2680.txt +F: Documentation/devicetree/bindings/media/i2c/ov2680.yaml F: drivers/media/i2c/ov2680.c OMNIVISION OV2685 SENSOR DRIVER From patchwork Mon Oct 19 14:49:25 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rui Miguel Silva X-Patchwork-Id: 286182 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=-17.2 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HK_RANDOM_FROM,INCLUDES_PATCH, MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable 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 EE78CC43457 for ; Mon, 19 Oct 2020 14:49:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 947E6222EA for ; Mon, 19 Oct 2020 14:49:43 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="RRv/+n6C" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729756AbgJSOtm (ORCPT ); Mon, 19 Oct 2020 10:49:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44580 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729645AbgJSOtm (ORCPT ); Mon, 19 Oct 2020 10:49:42 -0400 Received: from mail-wr1-x442.google.com (mail-wr1-x442.google.com [IPv6:2a00:1450:4864:20::442]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 283B4C0613CE; Mon, 19 Oct 2020 07:49:42 -0700 (PDT) Received: by mail-wr1-x442.google.com with SMTP id h7so45991wre.4; Mon, 19 Oct 2020 07:49:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FJVLPyYurU2ffYw5qoAbS9wZ6HpqEHFxMLJNaY9YrGo=; b=RRv/+n6CVI95iJUSWlYXbdas8xsydMzzYCnGJr49T/pKLgbcWtmoRlw59puj0jo6rE lRRF/fSiEYFm/aXTWTRAAA20jWbBppFcYhbEnEEzqeQpk9Ur/eymayek38D2QbbF4Qxe AKlJZhcCORe+cayJ0sh/90WbSPRKUCgIfD3eZMRgArYMItChtO5XxMkf5fpUjMJZ+P76 v5YdmouGa2plWmj1ZwVB/CQYjZH6GwHIP1+TJ8YhzjL4Zbufuq5tDjYuVL2qHfrkJnuv Al1UEGZLZUSXMFjMKNn3at40e66fleYSP2mH5ExYXXsDgO0Un1E6MRQbM1X43nveJsBw mqxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=FJVLPyYurU2ffYw5qoAbS9wZ6HpqEHFxMLJNaY9YrGo=; b=QmBMkSwujTnqLgfaC1HUTi22oTzLmYD/cTEkbwnkETPPlQDlPV++oOtaj52FR780h1 Yft3SzllHGEq2oaoBt+kexY92oM3+DtwIIYSouOng+v9FwdvLwUjW0aFFC32D6r3IurD pvBXMf3g0AUnuTZbweQeCXuUeDQh/P1aj1ZDB/JgbGWlxGha/jOkszlR0G9ZLJX0fFMF UbJRLF3s6szQ5FqzWGplMqS9ZUjwLrUgSs+dBFMDCmWsDPi3vYD47+DDt72DHx+lyRyY 9vd4JimxIb68xyZ++nAQW15ffhxCeAQW9qd9KrEEvzqsUWlZM412GOU+tQkwJK1CWxKj 9SCg== X-Gm-Message-State: AOAM531Gl0SEcgvNJ7Buf9dkFn9M8SyVdJeBU41YBZ7kaLj3WGBde7OK Kt6YNcq4DQSvuyDM9aTFIl6dLv2bjr8= X-Google-Smtp-Source: ABdhPJwkQY/LARhPCx2ijqF29OlazKqjbBzxbdQnGzsgBPGxbgbIN5fWl7uqwpCjgvtZsKGHLyywKA== X-Received: by 2002:adf:f2c9:: with SMTP id d9mr19932159wrp.319.1603118980866; Mon, 19 Oct 2020 07:49:40 -0700 (PDT) Received: from arch-thunder.local (a109-49-46-234.cpe.netcabo.pt. [109.49.46.234]) by smtp.gmail.com with ESMTPSA id d4sm18319243wrp.47.2020.10.19.07.49.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Oct 2020 07:49:40 -0700 (PDT) From: Rui Miguel Silva To: Rob Herring , sakari.ailus@linux.intel.com, Hans Verkuil , Jacopo Mondi Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org, Rui Miguel Silva Subject: [PATCH v3 3/3] dt-bindings: imx7-mipi-csi2: convert bindings to yaml Date: Mon, 19 Oct 2020 15:49:25 +0100 Message-Id: <20201019144925.1627715-4-rmfrfs@gmail.com> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20201019144925.1627715-1-rmfrfs@gmail.com> References: <20201019144925.1627715-1-rmfrfs@gmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Convert imx7 mipi csi2 bindings documentation to yaml schema, remove the textual document and update MAINTAINERS entry. Signed-off-by: Rui Miguel Silva --- v2 -> v3: https://lore.kernel.org/linux-media/20201015144905.4b23k5uy7ycuhvlo@uno.localdomain/ - fix dual license - capital letters fix - const instead of enum in compatible - data lanes array setup - add phy-supply to required - additionalProperties replace .../bindings/media/imx7-mipi-csi2.txt | 90 --------- .../bindings/media/nxp,imx7-mipi-csi2.yaml | 172 ++++++++++++++++++ MAINTAINERS | 2 +- 3 files changed, 173 insertions(+), 91 deletions(-) delete mode 100644 Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt create mode 100644 Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml diff --git a/Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt b/Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt deleted file mode 100644 index 71fd74ed3ec8..000000000000 --- a/Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt +++ /dev/null @@ -1,90 +0,0 @@ -Freescale i.MX7 Mipi CSI2 -========================= - -mipi_csi2 node --------------- - -This is the device node for the MIPI CSI-2 receiver core in i.MX7 SoC. It is -compatible with previous version of Samsung D-phy. - -Required properties: - -- compatible : "fsl,imx7-mipi-csi2"; -- reg : base address and length of the register set for the device; -- interrupts : should contain MIPI CSIS interrupt; -- clocks : list of clock specifiers, see - Documentation/devicetree/bindings/clock/clock-bindings.txt for details; -- clock-names : must contain "pclk", "wrap" and "phy" entries, matching - entries in the clock property; -- power-domains : a phandle to the power domain, see - Documentation/devicetree/bindings/power/power_domain.txt for details. -- reset-names : should include following entry "mrst"; -- resets : a list of phandle, should contain reset entry of - reset-names; -- phy-supply : from the generic phy bindings, a phandle to a regulator that - provides power to MIPI CSIS core; - -Optional properties: - -- clock-frequency : The IP's main (system bus) clock frequency in Hz, default - value when this property is not specified is 166 MHz; -- fsl,csis-hs-settle : differential receiver (HS-RX) settle time; - -The device node should contain two 'port' child nodes with one child 'endpoint' -node, according to the bindings defined in: - Documentation/devicetree/bindings/ media/video-interfaces.txt. - The following are properties specific to those nodes. - -port node ---------- - -- reg : (required) can take the values 0 or 1, where 0 shall be - related to the sink port and port 1 shall be the source - one; - -endpoint node -------------- - -- data-lanes : (required) an array specifying active physical MIPI-CSI2 - data input lanes and their mapping to logical lanes; this - shall only be applied to port 0 (sink port), the array's - content is unused only its length is meaningful, - in this case the maximum length supported is 2; - -example: - - mipi_csi: mipi-csi@30750000 { - #address-cells = <1>; - #size-cells = <0>; - - compatible = "fsl,imx7-mipi-csi2"; - reg = <0x30750000 0x10000>; - interrupts = ; - clocks = <&clks IMX7D_IPG_ROOT_CLK>, - <&clks IMX7D_MIPI_CSI_ROOT_CLK>, - <&clks IMX7D_MIPI_DPHY_ROOT_CLK>; - clock-names = "pclk", "wrap", "phy"; - clock-frequency = <166000000>; - power-domains = <&pgc_mipi_phy>; - phy-supply = <®_1p0d>; - resets = <&src IMX7_RESET_MIPI_PHY_MRST>; - reset-names = "mrst"; - fsl,csis-hs-settle = <3>; - - port@0 { - reg = <0>; - - mipi_from_sensor: endpoint { - remote-endpoint = <&ov2680_to_mipi>; - data-lanes = <1>; - }; - }; - - port@1 { - reg = <1>; - - mipi_vc0_to_csi_mux: endpoint { - remote-endpoint = <&csi_mux_from_mipi_vc0>; - }; - }; - }; diff --git a/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml b/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml new file mode 100644 index 000000000000..dfbae2e72c60 --- /dev/null +++ b/Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml @@ -0,0 +1,172 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/nxp,imx7-mipi-csi2.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: NXP i.MX7 Mipi CSI2 + +maintainers: + - Rui Miguel Silva + +description: | + This is the device node for the mipi csi-2 receiver core in i.mx7 soc. It is + compatible with previous version of samsung d-phy. + +properties: + compatible: + const: fsl,imx7-mipi-csi2 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + minItems: 3 + + clock-names: + items: + - const: pclk + - const: wrap + - const: phy + + power-domains: + maxItems: 1 + + phy-supply: + description: + Phandle to a regulator that provides power to the PHY. This + regulator will be managed during the PHY power on/off sequence. + + resets: + maxItems: 1 + + reset-names: + const: mrst + + clock-frequency: + description: + The IP main (system bus) clock frequency in Hertz + default: 166000000 + + fsl,csis-hs-settle: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Differential receiver (HS-RX) settle time + + ports: + type: object + description: + A node containing input and output port nodes with endpoint definitions + as documented in + Documentation/devicetree/bindings/media/video-interfaces.txt + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + port@0: + type: object + description: + Input port node, single endpoint describing the CSI-2 transmitter. + + properties: + reg: + const: 0 + + endpoint: + type: object + + properties: + data-lanes: + $ref: /schemas/types.yaml#/definitions/uint32-array + description: See ../video-interfaces.txt + oneOf: + - items: + - const: 1 + - items: + - const: 1 + - const: 2 + + remote-endpoint: true + + required: + - data-lanes + - remote-endpoint + + additionalProperties: false + + additionalProperties: false + + port@1: + type: object + description: + Output port node + +required: + - compatible + - reg + - interrupts + - clocks + - clock-names + - power-domains + - phy-supply + - resets + - reset-names + - ports + +additionalProperties: false + +examples: + - | + #include + #include + #include + #include + + mipi_csi: mipi-csi@30750000 { + compatible = "fsl,imx7-mipi-csi2"; + reg = <0x30750000 0x10000>; + interrupts = ; + + clocks = <&clks IMX7D_IPG_ROOT_CLK>, + <&clks IMX7D_MIPI_CSI_ROOT_CLK>, + <&clks IMX7D_MIPI_DPHY_ROOT_CLK>; + clock-names = "pclk", "wrap", "phy"; + clock-frequency = <166000000>; + + power-domains = <&pgc_mipi_phy>; + phy-supply = <®_1p0d>; + resets = <&src IMX7_RESET_MIPI_PHY_MRST>; + reset-names = "mrst"; + fsl,csis-hs-settle = <3>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + mipi_from_sensor: endpoint { + remote-endpoint = <&ov2680_to_mipi>; + data-lanes = <1>; + }; + }; + + port@1 { + reg = <1>; + + mipi_vc0_to_csi_mux: endpoint { + remote-endpoint = <&csi_mux_from_mipi_vc0>; + }; + }; + }; + }; + +... diff --git a/MAINTAINERS b/MAINTAINERS index 557713b3ee95..34e53a1570aa 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -10779,8 +10779,8 @@ L: linux-media@vger.kernel.org S: Maintained T: git git://linuxtv.org/media_tree.git F: Documentation/admin-guide/media/imx7.rst -F: Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt F: Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml +F: Documentation/devicetree/bindings/media/nxp,imx7-mipi-csi2.yaml F: drivers/staging/media/imx/imx7-media-csi.c F: drivers/staging/media/imx/imx7-mipi-csis.c