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=-8.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,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 0B45CC43382 for ; Fri, 28 Sep 2018 09:38:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id A8FFD215F0 for ; Fri, 28 Sep 2018 09:38:42 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A8FFD215F0 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729228AbeI1QBf (ORCPT ); Fri, 28 Sep 2018 12:01:35 -0400 Received: from mga18.intel.com ([134.134.136.126]:25549 "EHLO mga18.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729008AbeI1QBe (ORCPT ); Fri, 28 Sep 2018 12:01:34 -0400 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Sep 2018 02:38:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,314,1534834800"; d="scan'208";a="90345843" Received: from paasikivi.fi.intel.com ([10.237.72.42]) by fmsmga002.fm.intel.com with ESMTP; 28 Sep 2018 02:38:33 -0700 Received: by paasikivi.fi.intel.com (Postfix, from userid 1000) id EB844209CB; Fri, 28 Sep 2018 12:38:33 +0300 (EEST) Date: Fri, 28 Sep 2018 12:38:33 +0300 From: Sakari Ailus To: Yong Deng Cc: Maxime Ripard , Mauro Carvalho Chehab , Rob Herring , Mark Rutland , Chen-Yu Tsai , "\"David S. Miller" , Greg Kroah-Hartman , Andrew Morton , Arnd Bergmann , Hans Verkuil , Laurent Pinchart , Geert Uytterhoeven , Jacob Chen , Neil Armstrong , Thierry Reding , Philipp Zabel , Todor Tomov , linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com Subject: Re: [PATCH v11 1/2] dt-bindings: media: Add Allwinner V3s Camera Sensor Interface (CSI) Message-ID: <20180928093833.gwmskm2jvby6x4s6@paasikivi.fi.intel.com> References: <1537951204-24672-1-git-send-email-yong.deng@magewell.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1537951204-24672-1-git-send-email-yong.deng@magewell.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 Yong, On Wed, Sep 26, 2018 at 04:40:04PM +0800, Yong Deng wrote: > Add binding documentation for Allwinner V3s CSI. > > Acked-by: Maxime Ripard > Acked-by: Sakari Ailus I know... but I have a few more comments. > Reviewed-by: Rob Herring > Signed-off-by: Yong Deng > --- > .../devicetree/bindings/media/sun6i-csi.txt | 59 ++++++++++++++++++++++ > 1 file changed, 59 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/sun6i-csi.txt > > diff --git a/Documentation/devicetree/bindings/media/sun6i-csi.txt b/Documentation/devicetree/bindings/media/sun6i-csi.txt > new file mode 100644 > index 000000000000..2ff47a9507a6 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/sun6i-csi.txt > @@ -0,0 +1,59 @@ > +Allwinner V3s Camera Sensor Interface > +------------------------------------- > + > +Allwinner V3s SoC features two CSI module. CSI0 is used for MIPI CSI-2 > +interface and CSI1 is used for parallel interface. > + > +Required properties: > + - compatible: value must be "allwinner,sun8i-v3s-csi" > + - reg: base address and size of the memory-mapped region. > + - interrupts: interrupt associated to this IP > + - clocks: phandles to the clocks feeding the CSI > + * bus: the CSI interface clock > + * mod: the CSI module clock > + * ram: the CSI DRAM clock > + - clock-names: the clock names mentioned above > + - resets: phandles to the reset line driving the CSI > + > +Each CSI node should contain one 'port' child node with one child 'endpoint' > +node, according to the bindings defined in > +Documentation/devicetree/bindings/media/video-interfaces.txt. As mentioned > +above, the endpoint's bus type should be MIPI CSI-2 for CSI0 and parallel or > +Bt656 for CSI1. Which port represents CSI0 and which one is CSI1? That needs to be documented. > + > +Endpoint node properties for CSI1 How about CSI0? I'd expect at least data-lanes, and clock-lanes as well if the hardware supports lane mapping. > +--------------------------------- > + > +- remote-endpoint : (required) a phandle to the bus receiver's endpoint > + node > +- bus-width: : (required) must be 8, 10, 12 or 16 > +- pclk-sample : (optional) (default: sample on falling edge) Could you add that video-interfaces.txt contains documentation of these properties as well? There's a reference above but only discusses port and endpoint nodes. > +- hsync-active : (only required for parallel) > +- vsync-active : (only required for parallel) As you support both Bt656 and parallel (with sync signals), you can detect the interface type from the presence of these properties. I think you should also say that these properties are not allowed on Bt656. So I'd change this to e.g. (required; parallel-only) > + > +Example: > + > +csi1: csi@1cb4000 { > + compatible = "allwinner,sun8i-v3s-csi"; > + reg = <0x01cb4000 0x1000>; > + interrupts = ; > + clocks = <&ccu CLK_BUS_CSI>, > + <&ccu CLK_CSI1_SCLK>, > + <&ccu CLK_DRAM_CSI>; > + clock-names = "bus", "mod", "ram"; > + resets = <&ccu RST_BUS_CSI>; > + > + port { > + /* Parallel bus endpoint */ > + csi1_ep: endpoint { > + remote-endpoint = <&adv7611_ep>; > + bus-width = <16>; > + > + /* If hsync-active/vsync-active are missing, > + embedded BT.656 sync is used */ > + hsync-active = <0>; /* Active low */ > + vsync-active = <0>; /* Active low */ > + pclk-sample = <1>; /* Rising */ > + }; > + }; > +}; -- Kind regards, Sakari Ailus sakari.ailus@linux.intel.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sakari Ailus Subject: Re: [PATCH v11 1/2] dt-bindings: media: Add Allwinner V3s Camera Sensor Interface (CSI) Date: Fri, 28 Sep 2018 12:38:33 +0300 Message-ID: <20180928093833.gwmskm2jvby6x4s6@paasikivi.fi.intel.com> References: <1537951204-24672-1-git-send-email-yong.deng@magewell.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1537951204-24672-1-git-send-email-yong.deng@magewell.com> Sender: linux-kernel-owner@vger.kernel.org To: Yong Deng Cc: Maxime Ripard , Mauro Carvalho Chehab , Rob Herring , Mark Rutland , Chen-Yu Tsai , "\"David S. Miller" , Greg Kroah-Hartman , Andrew Morton , Arnd Bergmann , Hans Verkuil , Laurent Pinchart , Geert Uytterhoeven , Jacob Chen , Neil Armstrong , Thierry Reding , Philipp Zabel , Todor Tomov , linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-ke List-Id: devicetree@vger.kernel.org Hi Yong, On Wed, Sep 26, 2018 at 04:40:04PM +0800, Yong Deng wrote: > Add binding documentation for Allwinner V3s CSI. > > Acked-by: Maxime Ripard > Acked-by: Sakari Ailus I know... but I have a few more comments. > Reviewed-by: Rob Herring > Signed-off-by: Yong Deng > --- > .../devicetree/bindings/media/sun6i-csi.txt | 59 ++++++++++++++++++++++ > 1 file changed, 59 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/sun6i-csi.txt > > diff --git a/Documentation/devicetree/bindings/media/sun6i-csi.txt b/Documentation/devicetree/bindings/media/sun6i-csi.txt > new file mode 100644 > index 000000000000..2ff47a9507a6 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/sun6i-csi.txt > @@ -0,0 +1,59 @@ > +Allwinner V3s Camera Sensor Interface > +------------------------------------- > + > +Allwinner V3s SoC features two CSI module. CSI0 is used for MIPI CSI-2 > +interface and CSI1 is used for parallel interface. > + > +Required properties: > + - compatible: value must be "allwinner,sun8i-v3s-csi" > + - reg: base address and size of the memory-mapped region. > + - interrupts: interrupt associated to this IP > + - clocks: phandles to the clocks feeding the CSI > + * bus: the CSI interface clock > + * mod: the CSI module clock > + * ram: the CSI DRAM clock > + - clock-names: the clock names mentioned above > + - resets: phandles to the reset line driving the CSI > + > +Each CSI node should contain one 'port' child node with one child 'endpoint' > +node, according to the bindings defined in > +Documentation/devicetree/bindings/media/video-interfaces.txt. As mentioned > +above, the endpoint's bus type should be MIPI CSI-2 for CSI0 and parallel or > +Bt656 for CSI1. Which port represents CSI0 and which one is CSI1? That needs to be documented. > + > +Endpoint node properties for CSI1 How about CSI0? I'd expect at least data-lanes, and clock-lanes as well if the hardware supports lane mapping. > +--------------------------------- > + > +- remote-endpoint : (required) a phandle to the bus receiver's endpoint > + node > +- bus-width: : (required) must be 8, 10, 12 or 16 > +- pclk-sample : (optional) (default: sample on falling edge) Could you add that video-interfaces.txt contains documentation of these properties as well? There's a reference above but only discusses port and endpoint nodes. > +- hsync-active : (only required for parallel) > +- vsync-active : (only required for parallel) As you support both Bt656 and parallel (with sync signals), you can detect the interface type from the presence of these properties. I think you should also say that these properties are not allowed on Bt656. So I'd change this to e.g. (required; parallel-only) > + > +Example: > + > +csi1: csi@1cb4000 { > + compatible = "allwinner,sun8i-v3s-csi"; > + reg = <0x01cb4000 0x1000>; > + interrupts = ; > + clocks = <&ccu CLK_BUS_CSI>, > + <&ccu CLK_CSI1_SCLK>, > + <&ccu CLK_DRAM_CSI>; > + clock-names = "bus", "mod", "ram"; > + resets = <&ccu RST_BUS_CSI>; > + > + port { > + /* Parallel bus endpoint */ > + csi1_ep: endpoint { > + remote-endpoint = <&adv7611_ep>; > + bus-width = <16>; > + > + /* If hsync-active/vsync-active are missing, > + embedded BT.656 sync is used */ > + hsync-active = <0>; /* Active low */ > + vsync-active = <0>; /* Active low */ > + pclk-sample = <1>; /* Rising */ > + }; > + }; > +}; -- Kind regards, Sakari Ailus sakari.ailus@linux.intel.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: sakari.ailus@linux.intel.com (Sakari Ailus) Date: Fri, 28 Sep 2018 12:38:33 +0300 Subject: [PATCH v11 1/2] dt-bindings: media: Add Allwinner V3s Camera Sensor Interface (CSI) In-Reply-To: <1537951204-24672-1-git-send-email-yong.deng@magewell.com> References: <1537951204-24672-1-git-send-email-yong.deng@magewell.com> Message-ID: <20180928093833.gwmskm2jvby6x4s6@paasikivi.fi.intel.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Yong, On Wed, Sep 26, 2018 at 04:40:04PM +0800, Yong Deng wrote: > Add binding documentation for Allwinner V3s CSI. > > Acked-by: Maxime Ripard > Acked-by: Sakari Ailus I know... but I have a few more comments. > Reviewed-by: Rob Herring > Signed-off-by: Yong Deng > --- > .../devicetree/bindings/media/sun6i-csi.txt | 59 ++++++++++++++++++++++ > 1 file changed, 59 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/sun6i-csi.txt > > diff --git a/Documentation/devicetree/bindings/media/sun6i-csi.txt b/Documentation/devicetree/bindings/media/sun6i-csi.txt > new file mode 100644 > index 000000000000..2ff47a9507a6 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/sun6i-csi.txt > @@ -0,0 +1,59 @@ > +Allwinner V3s Camera Sensor Interface > +------------------------------------- > + > +Allwinner V3s SoC features two CSI module. CSI0 is used for MIPI CSI-2 > +interface and CSI1 is used for parallel interface. > + > +Required properties: > + - compatible: value must be "allwinner,sun8i-v3s-csi" > + - reg: base address and size of the memory-mapped region. > + - interrupts: interrupt associated to this IP > + - clocks: phandles to the clocks feeding the CSI > + * bus: the CSI interface clock > + * mod: the CSI module clock > + * ram: the CSI DRAM clock > + - clock-names: the clock names mentioned above > + - resets: phandles to the reset line driving the CSI > + > +Each CSI node should contain one 'port' child node with one child 'endpoint' > +node, according to the bindings defined in > +Documentation/devicetree/bindings/media/video-interfaces.txt. As mentioned > +above, the endpoint's bus type should be MIPI CSI-2 for CSI0 and parallel or > +Bt656 for CSI1. Which port represents CSI0 and which one is CSI1? That needs to be documented. > + > +Endpoint node properties for CSI1 How about CSI0? I'd expect at least data-lanes, and clock-lanes as well if the hardware supports lane mapping. > +--------------------------------- > + > +- remote-endpoint : (required) a phandle to the bus receiver's endpoint > + node > +- bus-width: : (required) must be 8, 10, 12 or 16 > +- pclk-sample : (optional) (default: sample on falling edge) Could you add that video-interfaces.txt contains documentation of these properties as well? There's a reference above but only discusses port and endpoint nodes. > +- hsync-active : (only required for parallel) > +- vsync-active : (only required for parallel) As you support both Bt656 and parallel (with sync signals), you can detect the interface type from the presence of these properties. I think you should also say that these properties are not allowed on Bt656. So I'd change this to e.g. (required; parallel-only) > + > +Example: > + > +csi1: csi at 1cb4000 { > + compatible = "allwinner,sun8i-v3s-csi"; > + reg = <0x01cb4000 0x1000>; > + interrupts = ; > + clocks = <&ccu CLK_BUS_CSI>, > + <&ccu CLK_CSI1_SCLK>, > + <&ccu CLK_DRAM_CSI>; > + clock-names = "bus", "mod", "ram"; > + resets = <&ccu RST_BUS_CSI>; > + > + port { > + /* Parallel bus endpoint */ > + csi1_ep: endpoint { > + remote-endpoint = <&adv7611_ep>; > + bus-width = <16>; > + > + /* If hsync-active/vsync-active are missing, > + embedded BT.656 sync is used */ > + hsync-active = <0>; /* Active low */ > + vsync-active = <0>; /* Active low */ > + pclk-sample = <1>; /* Rising */ > + }; > + }; > +}; -- Kind regards, Sakari Ailus sakari.ailus at linux.intel.com