From patchwork Mon May 7 16:21:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rui Miguel Silva X-Patchwork-Id: 135114 Delivered-To: patch@linaro.org Received: by 10.46.151.6 with SMTP id r6csp3356357lji; Mon, 7 May 2018 09:22:57 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqHZqac5pxjN6I2AodFTFG3mNZANn8cMw2X1rSaEqO4aUrb2aOkkLsW8gnCbVn5Ks3kLvmJ X-Received: by 2002:a24:fa05:: with SMTP id v5-v6mr1971118ith.101.1525710177439; Mon, 07 May 2018 09:22:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525710177; cv=none; d=google.com; s=arc-20160816; b=EIvfHUdfpe/do7bEjN+U7yUUcang3ikRzUZ28APtl9kBqNHgwAg25RouJukg+2avxY ktYoTJDbQ2rjZnFH62fLX0+Q9ENw10Q21W8vBFDur5a12NMpd84fRVKe748Jzp2LSsxr jjfCZOtfVRCDoxK2ow58jjnBz1Ymn28TT2K9g09IQMkRWNiyzhrP2t6+MdxyaiNyaLEs FQtDLc+9SBWz23X/XPgcShgCA2tSGgSWK7wsRIyYG3Loe3XyLKN34/ekjCovqt0hCC6N XN7eSHjU78cX/9SHKDrRwzzk0PVLbOKyHai8ImRg2CJvYgLGZIORXbj3GCg+NhpWjAGJ /S3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:arc-authentication-results; bh=+uLNqRgUezA5v8rK101OemrsYB8SZjjAm8/lOf/oYHQ=; b=m4KZnqFjJ+TE6ikS8/qnvp5SoLXvyEQWLNVa3T7qYUS3qfeupzn4bMkLqA3w3ZTZrl YTz2De2Xn+qQegjvjxnxGahToVJDMYQD4Di7czDWKKCgSxoc55I0ifGChWQmVPRqSPxv AX2TLVPCcEhwOfMqEraiA76A4l5AwNU36Q6KgDk7do61I6FJz8heqAOINPwpjMr6/PEj b1I/LF3sAvdiqxzbdfN7rMCkISXLuyA0a3qvvH7oqa63wSVdZGCoJzBo2rVUTezj9RKM b7ZzZ0s0xiR2mguzK11TlCJxqrivvjvGPMO7qntbYpN4WG7T6+/FMT407Z45Cp+xC5Q+ 1nug== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=XkqFKGFe; spf=pass (google.com: best guess record for domain of linux-media-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-media-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v125-v6si7612679ith.144.2018.05.07.09.22.57; Mon, 07 May 2018 09:22:57 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-media-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=XkqFKGFe; spf=pass (google.com: best guess record for domain of linux-media-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-media-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752580AbeEGQWz (ORCPT + 5 others); Mon, 7 May 2018 12:22:55 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:39779 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752549AbeEGQWx (ORCPT ); Mon, 7 May 2018 12:22:53 -0400 Received: by mail-wm0-f67.google.com with SMTP id f8-v6so16465380wmc.4 for ; Mon, 07 May 2018 09:22:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=+uLNqRgUezA5v8rK101OemrsYB8SZjjAm8/lOf/oYHQ=; b=XkqFKGFeKovmEMG38nHkfN0kswQrGufkVSpc3PhnoPmO2rVgk9ZdtF444n6R53D83l roFsTFC40FFsAw5sDUZgEtvsZE8xa1bOh8YYg3x+mpHKPYs0mjAA+wpY6K45JXCnaTe8 YxQlnnlMeIYPpLAyro8gGx2GBni/EyvrqVzb0= 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; bh=+uLNqRgUezA5v8rK101OemrsYB8SZjjAm8/lOf/oYHQ=; b=qh092LjZYVAgkcJFqRsqPrL2dVrA2d+TikuWXlS4lKYS0hKVpJhZTS88S4eWS7p9GB LF6ftmqdPYb6jVj+YEvNqKKWjmf9PBAgKIIkh/1i6hH6GqUYbqfX6op53M8EnosnNNxV 1O3QvwVrYJSdTwaZrnDtJs/oEL1FCy/sm53nU9MoUlbOpqox7OqisbaXuoqeynU85qd3 sYTYWxnMPj1Ggfo7ap9Cevbs7GQD5fnOKmwPV/axOKNaLZ7zbg24cFaPgJvhACHuQYw6 ois/xFu+5FSgA4linnWxN+4Kb3VVT7d/bRHXd5v3t5ByQM+zdDOo0peSWyWAuaWMsUDE d4KQ== X-Gm-Message-State: ALKqPwe+W0ECcgLXDMgorU618GnMtek8fDAQiZ7acOMv8fbqhSmPiWOL 0SSUKINjN5syhmj0atJUfvhb7w== X-Received: by 10.28.59.212 with SMTP id i203mr1291742wma.41.1525710172439; Mon, 07 May 2018 09:22:52 -0700 (PDT) Received: from arch-late.local (a109-49-46-234.cpe.netcabo.pt. [109.49.46.234]) by smtp.gmail.com with ESMTPSA id b11-v6sm26410251wrf.50.2018.05.07.09.22.51 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 07 May 2018 09:22:51 -0700 (PDT) From: Rui Miguel Silva To: mchehab@kernel.org, sakari.ailus@linux.intel.com, Steve Longerbeam , Philipp Zabel , Rob Herring Cc: linux-media@vger.kernel.org, devel@driverdev.osuosl.org, Shawn Guo , Fabio Estevam , devicetree@vger.kernel.org, Greg Kroah-Hartman , Ryan Harkin , Rui Miguel Silva Subject: [PATCH v3 10/14] ARM: dts: imx7: Add video mux, csi and mipi_csi and connections Date: Mon, 7 May 2018 17:21:48 +0100 Message-Id: <20180507162152.2545-11-rui.silva@linaro.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180507162152.2545-1-rui.silva@linaro.org> References: <20180507162152.2545-1-rui.silva@linaro.org> Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org This patch adds the device tree nodes for csi, video multiplexer and mipi-csi besides the graph connecting the necessary endpoints to make the media capture entities to work in imx7 Warp board. Also add the pin control related with the mipi_csi in that board. Signed-off-by: Rui Miguel Silva --- arch/arm/boot/dts/imx7s-warp.dts | 78 ++++++++++++++++++++++++++++++++ arch/arm/boot/dts/imx7s.dtsi | 28 ++++++++++++ 2 files changed, 106 insertions(+) -- 2.17.0 diff --git a/arch/arm/boot/dts/imx7s-warp.dts b/arch/arm/boot/dts/imx7s-warp.dts index 8a30b148534d..ffd170ae925a 100644 --- a/arch/arm/boot/dts/imx7s-warp.dts +++ b/arch/arm/boot/dts/imx7s-warp.dts @@ -310,6 +310,77 @@ status = "okay"; }; +&gpr { + csi_mux { + compatible = "video-mux"; + mux-controls = <&mux 0>; + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + csi_mux_from_parallel_sensor: endpoint { + }; + }; + + port@1 { + reg = <1>; + + csi_mux_from_mipi_vc0: endpoint { + remote-endpoint = <&mipi_vc0_to_csi_mux>; + }; + }; + + port@2 { + reg = <2>; + + csi_mux_to_csi: endpoint { + remote-endpoint = <&csi_from_csi_mux>; + }; + }; + }; +}; + +&csi { + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + csi_from_csi_mux: endpoint { + remote-endpoint = <&csi_mux_to_csi>; + }; + }; +}; + +&mipi_csi { + clock-frequency = <166000000>; + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + 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>; + }; + }; +}; + &wdog1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_wdog>; @@ -357,6 +428,13 @@ >; }; + pinctrl_mipi_csi: mipi_csi { + fsl,pins = < + MX7D_PAD_LPSR_GPIO1_IO03__GPIO1_IO3 0x14 + MX7D_PAD_ENET1_RGMII_TD0__GPIO7_IO6 0x14 + >; + }; + pinctrl_sai1: sai1grp { fsl,pins = < MX7D_PAD_SAI1_RX_DATA__SAI1_RX_DATA0 0x1f diff --git a/arch/arm/boot/dts/imx7s.dtsi b/arch/arm/boot/dts/imx7s.dtsi index 3590dab529f9..0bae41f2944c 100644 --- a/arch/arm/boot/dts/imx7s.dtsi +++ b/arch/arm/boot/dts/imx7s.dtsi @@ -46,6 +46,7 @@ #include #include #include +#include #include "imx7d-pinfunc.h" / { @@ -738,6 +739,17 @@ status = "disabled"; }; + csi: csi@30710000 { + compatible = "fsl,imx7-csi"; + reg = <0x30710000 0x10000>; + interrupts = ; + clocks = <&clks IMX7D_CLK_DUMMY>, + <&clks IMX7D_CSI_MCLK_ROOT_CLK>, + <&clks IMX7D_CLK_DUMMY>; + clock-names = "axi", "mclk", "dcic"; + status = "disabled"; + }; + lcdif: lcdif@30730000 { compatible = "fsl,imx7d-lcdif", "fsl,imx28-lcdif"; reg = <0x30730000 0x10000>; @@ -747,6 +759,22 @@ clock-names = "pix", "axi"; status = "disabled"; }; + + 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"; + power-domains = <&pgc_mipi_phy>; + phy-supply = <®_1p0d>; + resets = <&src IMX7_RESET_MIPI_PHY_MRST>; + reset-names = "mrst"; + bus-width = <2>; + status = "disabled"; + }; }; aips3: aips-bus@30800000 {