Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp654960ybg; Wed, 10 Jun 2020 10:07:43 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwmSVWQ1K+l/An0HAGREteJARwUno56upIaluGqfnvmZMZCkE4sw66XCfGMd/qBgHEreQwu X-Received: by 2002:a17:906:32d4:: with SMTP id k20mr4099557ejk.364.1591808863061; Wed, 10 Jun 2020 10:07:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1591808863; cv=none; d=google.com; s=arc-20160816; b=jCybrBh7xcuVAIDTOBPxf9uELHdeqqONuHhOy+tKkc2MNlR+Rf11ISnB8762pFlSa7 +FcTdgAmph7iea68thqOlPTrIEPJjeiUGkBG2gPneVnzmW9juU0SyX501L0XbQb1Uy5r r3h2+7BSYPh6OuoTzq9ZdDIl7ApAf18XKmUiGf2DMKkcuGR3pZKMGqZCfGPLUzQVvEPs fd5x5SPWYiHx2oo1WXQZ2K47kD77dVeeubtivC3YYLvT6ABLvmnUm+I8Kes9It+ziSH0 DoDpxtjp4qt9yTD9EY+EOkyRn8gI4jinzJ/KGr2/w3QOV2LBrg2rn6259UouubeXKjef M3TQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:dkim-signature:content-language :content-transfer-encoding:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=kk+QMVEOjc1lV2kCwKPqvUooZW7O6ZM/dk+n2Vpww1I=; b=Iqw1IH5nAuDaMn2vB6vLaMtFXDwHFn9wB8B4W2D1ArPGm2VI8va0W8UgorjpFK3p35 o7xPhvpPoGV0DSpY9cmd1X8V8W/1OIO0LQ0O+acIOQ/y/8TPCwM5AaShjAaRQyJNdEbt uryL9V07kckcZvzfImcucTybaOGB3lha4xRzsAP5gIhdAXt1cTnonU+/Qo/lpEAWpEt4 R2W4M69/kD2aeLb/rCrrOrTCY1IRQIT9L+ZRK9jzRM0AlGRRiOZbfA/aMp/afJlz00JU 1oUqGehryYGHnmSwyfqSFi/XKAEEcog796XyGD40hrF1DNx9UFfXAdROnvZjlsK47fH2 Dwrg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nvidia.com header.s=n1 header.b=MFkqUean; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f8si125344edk.160.2020.06.10.10.07.19; Wed, 10 Jun 2020 10:07:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@nvidia.com header.s=n1 header.b=MFkqUean; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=nvidia.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730109AbgFJPPV (ORCPT + 99 others); Wed, 10 Jun 2020 11:15:21 -0400 Received: from hqnvemgate25.nvidia.com ([216.228.121.64]:7884 "EHLO hqnvemgate25.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726979AbgFJPPV (ORCPT ); Wed, 10 Jun 2020 11:15:21 -0400 Received: from hqpgpgate101.nvidia.com (Not Verified[216.228.121.13]) by hqnvemgate25.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Wed, 10 Jun 2020 08:14:35 -0700 Received: from hqmail.nvidia.com ([172.20.161.6]) by hqpgpgate101.nvidia.com (PGP Universal service); Wed, 10 Jun 2020 08:15:20 -0700 X-PGP-Universal: processed; by hqpgpgate101.nvidia.com on Wed, 10 Jun 2020 08:15:20 -0700 Received: from [10.2.167.70] (10.124.1.5) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 10 Jun 2020 15:15:20 +0000 Subject: Re: [RFC PATCH v1 10/18] dt-bindings: tegra: Document VI and CSI port nodes To: Sakari Ailus CC: , , , , , , , , , , , , , References: <1591768960-31648-1-git-send-email-skomatineni@nvidia.com> <1591768960-31648-11-git-send-email-skomatineni@nvidia.com> <20200610112303.GB805@valkosipuli.retiisi.org.uk> From: Sowjanya Komatineni Message-ID: <075d9d2e-eaa8-1895-8759-64c682fee1c4@nvidia.com> Date: Wed, 10 Jun 2020 08:15:19 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: <20200610112303.GB805@valkosipuli.retiisi.org.uk> X-Originating-IP: [10.124.1.5] X-ClientProxiedBy: HQMAIL111.nvidia.com (172.20.187.18) To HQMAIL107.nvidia.com (172.20.187.13) Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1591802075; bh=kk+QMVEOjc1lV2kCwKPqvUooZW7O6ZM/dk+n2Vpww1I=; h=X-PGP-Universal:Subject:To:CC:References:From:Message-ID:Date: User-Agent:MIME-Version:In-Reply-To:X-Originating-IP: X-ClientProxiedBy:Content-Type:Content-Transfer-Encoding: Content-Language; b=MFkqUeanNXj7YJ7FGzM7DBn4AJjXWtgazzXgRA784zPBzaxM2ulHOtMFGOurpOhnM EwmxTSdIVlQ3yPEwfa0y7DCw9KSpQ5FzHYasTOo8hzAbuuundwbAlvWXXX9jEZdjtP a8PexiFY8BSuWapSjGFDvV5AI1sqP21VrNjJWAm7Ni7D1EYlOir36PJuVf34Wtae/b AdpQXFrlmZAJtwNKlVFTvqH/J/1qR2xplPdUz0v/r1q/b66WPew8Oh+ZrmYkmQfwCw PwS7xtU3t2s7mGlYs/dKXz7+8IoEeY+B7qYVLJd0lO3J7rtLMC202JPFeviJTW7v6G Q/01ljPFErdPQ== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 6/10/20 4:23 AM, Sakari Ailus wrote: > Hi Sowjanya, > > Thanks for the patchset. > > On Tue, Jun 09, 2020 at 11:02:32PM -0700, Sowjanya Komatineni wrote: >> This patch documents Tegra VI and CSI port and endpoint nodes along >> with the other required properties. >> >> Signed-off-by: Sowjanya Komatineni >> --- >> .../display/tegra/nvidia,tegra20-host1x.txt | 87 ++++++++++++++++++++++ >> 1 file changed, 87 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.txt b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.txt >> index 4731921..f70a838 100644 >> --- a/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.txt >> +++ b/Documentation/devicetree/bindings/display/tegra/nvidia,tegra20-host1x.txt >> @@ -65,6 +65,48 @@ of the following host1x client modules: >> - power-domains: Must include sor powergate node as csicil is in >> SOR partition. >> >> + Optional properties for csi node: > What hardware does the csi node represent? A CSI-2 receiver? Something > else? > > If you have two connections, you need two ports. The example isn't quite > clear on this; it would appear to represent a single physical interface. CS-2 receiver with 2 connections. one for sink with sensor to csi and other as source with csi to Tegra vi. Was using separate port for sink and source and then I misunderstood device graph document and changed to have multiple endpoints in same port. Will update this in v2 to have separate port for each sink and source endpoint in csi in dt and also in driver implementation. >> + >> + - channel nodes: Max upto 6 channels/streams are supported with each CSI >> + brick can as either x4 or x2 based on hw connectivity to sensor. >> + >> + Required properties: >> + - reg: channel/stream index >> + - nvidia,mipi-calibrate: Should contain a phandle and a specifier >> + specifying which pads are used by this CSI port and need to be >> + calibrated. See also ../display/tegra/nvidia,tegra114-mipi.txt. >> + >> + - port: CSI port node and its endpoint nodes as per device graph >> + bindings defined in Documentation/devicetree/bindings/graph.txt. >> + Required properties: > You have both properties and nodes here. Same for the above (port is a > node). Will update document to separate out port node from properties > >> + - reg: csi port index based on hw csi lanes connectivity to the >> + sensor. >> + - bus-width: number of lanes used by this port. Supported lanes >> + are 1/2/4. > bus-width belongs to the endpoint. Note that this is for parallel busses > only. If you need the number of lanes, the property is called data-lanes. Will update in v2 for having separate ports for sink and source endpoints will move bus-width to endpoint. > >> + - endpoint@0: sink node >> + Required properties: >> + - reg: endpoint id. This is used to retrieve pad for creating >> + media link >> + - remote-endpoint: phandle to sensor endpoint >> + - endpoint@1: source node >> + - reg: endpoint id. This is used to retrieve pad for creating >> + media link >> + - remote-endpoint: phandle to vi port endpoint >> + >> + Optional properties for vi node: >> + - ports: Video port nodes and endpoint nodes as per device graph bindings >> + defined in Documentation/devicetree/bindings/graph.txt >> + Max 6 ports are supported and each port should have one endpoint node. >> + >> + Required properties: >> + - port: VI port node and its sink endpoint node >> + Required properties: >> + - reg: should match port index >> + - endpoint@0: sink node >> + Required properties: >> + - reg: endpoint id must be 0 >> + - remote-endpoint: phandle to CSI endpoint node. >> + >> - epp: encoder pre-processor >> >> Required properties: >> @@ -340,6 +382,22 @@ Example: >> >> ranges = <0x0 0x0 0x54080000 0x2000>; >> >> + ports { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + port@0 { >> + reg = <0>; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + imx219_vi_in0: endpoint@0 { >> + reg = <0>; >> + remote-endpoint = <&imx219_csi_out0>; >> + }; >> + }; >> + }; >> + >> csi@838 { >> compatible = "nvidia,tegra210-csi"; >> reg = <0x838 0x1300>; >> @@ -362,6 +420,35 @@ Example: >> <&tegra_car TEGRA210_CLK_CSI_TPG>; >> clock-names = "csi", "cilab", "cilcd", "cile", "csi_tpg"; >> power-domains = <&pd_sor>; >> + >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + channel@0 { >> + reg = <0>; >> + nvidia,mipi-calibrate = <&mipi 0x001>; >> + >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + port@0 { >> + reg = <0>; >> + bus-width = <2>; >> + >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + imx219_csi_in0: endpoint@0 { >> + reg = <0>; >> + remote-endpoint = <&imx219_out0>; >> + }; >> + >> + imx219_csi_out0: endpoint@1 { >> + reg = <1>; >> + remote-endpoint = <&imx219_vi_in0>; >> + }; >> + }; >> + }; >> }; >> }; >>