Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp4983364rwr; Sun, 23 Apr 2023 18:24:30 -0700 (PDT) X-Google-Smtp-Source: AKy350aqFukNYnh7PTPqdgi4OgIUyfvKEBFKJO6zyZqJcArVJXeru3O3eZkyLH1mUSccxC3XXNmO X-Received: by 2002:a05:6a20:3d21:b0:ef:b575:e559 with SMTP id y33-20020a056a203d2100b000efb575e559mr15557679pzi.8.1682299469896; Sun, 23 Apr 2023 18:24:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1682299469; cv=none; d=google.com; s=arc-20160816; b=GXtSMiLi/HcD7dzkHC0Jll4y/Man4mo5HumKMyy07jQiMdDAJTRBLeJO8krlDqDMtQ 27YT8haEopaShEar/AUk3oaLafBiFtDXIjLPB1ASDVTTSOPewnxSmjVO50mI8jhBQDDO QJ0mH77G70ucWPccIbD91fgNtMAvKn29rp1V0tGBfHoetCZSRCXABw7tSu2XUAlxxvIT xzIpns1NIgLjKU4KJLBTHDaJw79fsT6TcWc0ti8sE3NazG2qNZ+waCpFc9ZWpNwJhAIK YvmRkB4ygyLk6joqzsTlpBDx9PtY6SvRhHmF7rhfIhJRcgUPuxj6fLhLGZquAmQBNRHj lw/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=dH+Hl8EtsleD5OGZ2D50QT53OcnqWk2ZerNEWSAP1qI=; b=eWPFZKA9TvavPNlgBP1QWk9e845SGh6djSkThwkWK7tA4u3eZwQIMcmr0000CuQadP bzm2pq1nIgz7hn27HGPn4PFj5gi0LC1TicBaV1PP0A/FPdl4Prs9gQBRg6olW6fs4FUM IIn0FJ3ri4azHTy43g6l+cqgRbzsX3xjpMk5ZtoQUZZ0BwK+hVEs9LmGsNgFpyla4pUu CvXVYxj2YKAUfpt5zIFZAHvA/+NtkiV1P1t9fLpsTVPWb6iTiyWnVcDi/Ra7co734g9D qc8nmDV++x9CzY4zdCQBG/bFSVd+UrXMm9GsHdjGOUErkIJTAPw0HzhBafipjYKdzPh+ I4rg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=W+YnSBwe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d10-20020a63d64a000000b00524b0295005si10044566pgj.558.2023.04.23.18.24.09; Sun, 23 Apr 2023 18:24:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=W+YnSBwe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230260AbjDXArD (ORCPT + 99 others); Sun, 23 Apr 2023 20:47:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56210 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229516AbjDXArB (ORCPT ); Sun, 23 Apr 2023 20:47:01 -0400 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A99C710FA; Sun, 23 Apr 2023 17:46:58 -0700 (PDT) Received: from pendragon.ideasonboard.com (133-32-181-51.west.xps.vectant.ne.jp [133.32.181.51]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id D0434A1A; Mon, 24 Apr 2023 02:46:45 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1682297206; bh=5thjJ3uT6E3RgXxrsfIPHw4RCp/Ze3R46Fpgm7XAvik=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=W+YnSBwegZQ+fcegIfuMQczoR7VVsqyW9914TD4iunqnqFnsUTUPyBmFxJAFaLu7o dmCBz0wvNNvv9F0+5mJ9tyYOghv3ELkwS76mVGRb3pN61vdJ5ZgtWL+ppzmBbRyl9D fUE9BEJYrsdnp5SGL/dMshAuRLH2rIPIqYvVRAqc= Date: Mon, 24 Apr 2023 03:47:06 +0300 From: Laurent Pinchart To: Adam Ford Cc: linux-arm-kernel@lists.infradead.org, Rob Herring , Krzysztof Kozlowski , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , NXP Linux Team , Catalin Marinas , Will Deacon , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/2] arm64: dts: imx8mn: Enable CSI and ISI Nodes Message-ID: <20230424004706.GL21943@pendragon.ideasonboard.com> References: <20230423212656.1381002-1-aford173@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20230423212656.1381002-1-aford173@gmail.com> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Adam, Thank you for the patch. On Sun, Apr 23, 2023 at 04:26:55PM -0500, Adam Ford wrote: > The CSI in the imx8mn is the same as what is used in the imx8mm, > but it's routed to the ISI on the Nano. Add both the ISI and CSI > nodes, and pointing them to each other. Since the CSI capture is > dependent on an attached camera, mark both ISI and CSI as > disabled by default. I'd then write the subject line as "Add CSI and ISI nodes". > Signed-off-by: Adam Ford > > diff --git a/arch/arm64/boot/dts/freescale/imx8mn.dtsi b/arch/arm64/boot/dts/freescale/imx8mn.dtsi > index 8be8f090e8b8..102550b41f22 100644 > --- a/arch/arm64/boot/dts/freescale/imx8mn.dtsi > +++ b/arch/arm64/boot/dts/freescale/imx8mn.dtsi > @@ -1104,6 +1104,24 @@ dsim_from_lcdif: endpoint { > }; > }; > > + isi: isi@32e20000 { > + compatible = "fsl,imx8mn-isi"; > + reg = <0x32e20000 0x100>; The i.MX8MN reference manual documents the ISI registers block size to be 64kB. Should we use the same here, even if all the registers we need are within the first 256 bytes ? > + interrupts = ; > + clocks = <&clk IMX8MN_CLK_DISP_AXI_ROOT>, > + <&clk IMX8MN_CLK_DISP_APB_ROOT>; > + clock-names = "axi", "apb"; > + fsl,blk-ctrl = <&disp_blk_ctrl>; > + power-domains = <&disp_blk_ctrl IMX8MN_DISPBLK_PD_ISI>; > + status = "disabled"; > + > + port { > + isi_in: endpoint { > + remote-endpoint = <&mipi_csi_out>; > + }; > + }; This will fail to validate against the ISI DT binding, as they require a "ports" node. When a single port is present using a "port" node directly is fine from an OF graph point of view, but to avoid too much complexity in the ISI binding the consensus was to always require a "ports" node for the ISI. > + }; > + > disp_blk_ctrl: blk-ctrl@32e28000 { > compatible = "fsl,imx8mn-disp-blk-ctrl", "syscon"; > reg = <0x32e28000 0x100>; > @@ -1147,6 +1165,42 @@ disp_blk_ctrl: blk-ctrl@32e28000 { > #power-domain-cells = <1>; > }; > > + mipi_csi: mipi-csi@32e30000 { > + compatible = "fsl,imx8mm-mipi-csi2"; > + reg = <0x32e30000 0x1000>; > + interrupts = ; > + assigned-clocks = <&clk IMX8MN_CLK_CAMERA_PIXEL>, > + <&clk IMX8MN_CLK_CSI1_PHY_REF>; > + assigned-clock-parents = <&clk IMX8MN_SYS_PLL2_1000M>, > + <&clk IMX8MN_SYS_PLL2_1000M>; > + assigned-clock-rates = <333000000>; > + clock-frequency = <333000000>; > + clocks = <&clk IMX8MN_CLK_DISP_APB_ROOT>, > + <&clk IMX8MN_CLK_CAMERA_PIXEL>, > + <&clk IMX8MN_CLK_CSI1_PHY_REF>, > + <&clk IMX8MN_CLK_DISP_AXI_ROOT>; > + clock-names = "pclk", "wrap", "phy", "axi"; > + power-domains = <&disp_blk_ctrl IMX8MN_DISPBLK_PD_MIPI_CSI>; > + status = "disabled"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + }; > + > + port@1 { > + reg = <1>; > + > + mipi_csi_out: endpoint { > + remote-endpoint = <&isi_in>; > + }; > + }; > + }; > + }; > + > usbotg1: usb@32e40000 { > compatible = "fsl,imx8mn-usb", "fsl,imx7d-usb", "fsl,imx27-usb"; > reg = <0x32e40000 0x200>; -- Regards, Laurent Pinchart