Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp779012imm; Fri, 28 Sep 2018 06:44:19 -0700 (PDT) X-Google-Smtp-Source: ACcGV63zeOq7b83ergFGj6wlbbXyA0pQoHmPNFzt+YBQ1oqaPYgnlmOKxCtV9mrKduLCTidSCtA+ X-Received: by 2002:a17:902:a40c:: with SMTP id p12-v6mr3230586plq.165.1538142259085; Fri, 28 Sep 2018 06:44:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1538142259; cv=none; d=google.com; s=arc-20160816; b=J1RtSoIJafLdbeqgeSlyXlyV0YhYHN9Bubp0DiFVQUXPu/xoUIyHjzwLu0LXi7Vag+ yCxpMiIQMrnHFJMNhMZxIbLG4VWmAN7MKXVog5UvsW1yqNkfYVMoED0iuymTHfpwpZ7/ T17pg0PyBCF+itcOH/J6kMWsg0ati4/SsfqFbCz3s7MdW0HJ7d7q4UDN0YS0Vn9I8k3p yTm2hqcCd+qCGJh1CCUL+Gn5UP4GTe98C/RB+mmNFY/ClkIBTELnCFRWveW7obmdxcOa DmeAFAQ/+738pecoiv0A4YB7ruU8QDhooTJjThyPLXzzakfUYjX8WA1DiQHnymRhzuna Q+Nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version; bh=HKFzhuDKfVWhiOjl4PQ2E/qoKeAawArYOMOYGkpl+Zg=; b=wcYNHg1krV/6g59sQ4nxCCBs0lWW1indyMSsAdLfJhz7/NaPFzdWMaHxhYs41sYA20 sKXq1Zr0ZvNsAoc9mG3b0xE4gEJ7a/YMzjOeAcvMebjwvL9Xqo23BFgpKGui5tIWSya6 V/QHjjrERGtU+jGEhN42KzDHTkl3LcMAbjVtzyix0wrGuYc/sffGs+GmKcqVIopHklc2 wD4lwOWEYzpRlqq1H7XQhBeifviOLLN4RMK2+z4+VhU6xReCjFEz4aBnRnzFfdJjRb7Q LAWJNQ9Dm1cKWdy4fjUEM+38SEiLTsZa/vE2p3Hm9HoQwvRoe2VoL/dCRBLvQx4Nio05 IFOA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b14-v6si4766127pgk.169.2018.09.28.06.44.03; Fri, 28 Sep 2018 06:44:19 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729422AbeI1UG7 (ORCPT + 99 others); Fri, 28 Sep 2018 16:06:59 -0400 Received: from mail-ed1-f68.google.com ([209.85.208.68]:46854 "EHLO mail-ed1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728920AbeI1UG6 (ORCPT ); Fri, 28 Sep 2018 16:06:58 -0400 Received: by mail-ed1-f68.google.com with SMTP id k14-v6so8190735edr.13; Fri, 28 Sep 2018 06:43:06 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=HKFzhuDKfVWhiOjl4PQ2E/qoKeAawArYOMOYGkpl+Zg=; b=F4yjT90Vu/ZoCztzs9NVSE8ayN0jVRMI3WoAwMvcAMZoh3B7VWTTrvz4mOLdfWVNZ2 Y3chmE5Sz38/acbpQ+llNmlEJqT60BiSWLcxdEP5sgngUwEvdNJNr3fbY5tu4kKcXM7H 6XI4b8BnryGYW+U26rzsyHtvvjoIE+hBxMVv1Pwd9isNvS9LWDMeTgruS9OMnXsbJWWz sfVO47Ok3n8FP6XrFSQ/wmAuY+zwWj8vRzRIeSzK6epHTe7kVuez53UOv6gpKjY6gjGm fifu5vNX5ion/4nnpOYftimqUJY20PYGJQIv7f/6C4Gk7P1OhFmqlvixlJqs1lXNLpSY jLAw== X-Gm-Message-State: ABuFfohrZyxCilei4KYLu8fLu42rsz52PXDE7sOyOg9ddXBM7AeitCgw b1reut8MYlKSpHvSol331i3LqoEX9HM= X-Received: by 2002:a17:906:6698:: with SMTP id z24-v6mr2523258ejo.101.1538142185511; Fri, 28 Sep 2018 06:43:05 -0700 (PDT) Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com. [209.85.128.52]) by smtp.gmail.com with ESMTPSA id w8-v6sm2074117edq.81.2018.09.28.06.43.03 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 28 Sep 2018 06:43:03 -0700 (PDT) Received: by mail-wm1-f52.google.com with SMTP id b19-v6so2278889wme.3; Fri, 28 Sep 2018 06:43:03 -0700 (PDT) X-Received: by 2002:a1c:f53:: with SMTP id 80-v6mr1767858wmp.58.1538142182857; Fri, 28 Sep 2018 06:43:02 -0700 (PDT) MIME-Version: 1.0 References: <1537951204-24672-1-git-send-email-yong.deng@magewell.com> <20180928093833.gwmskm2jvby6x4s6@paasikivi.fi.intel.com> <14114604.4rraf0qJLU@avalon> <20180928102345.r2g342tg5mgcwfw6@paasikivi.fi.intel.com> <20180928125601.6ye5tvrmh57amvh5@paasikivi.fi.intel.com> In-Reply-To: <20180928125601.6ye5tvrmh57amvh5@paasikivi.fi.intel.com> From: Chen-Yu Tsai Date: Fri, 28 Sep 2018 21:42:50 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v11 1/2] dt-bindings: media: Add Allwinner V3s Camera Sensor Interface (CSI) To: Sakari Ailus Cc: Laurent Pinchart , Yong Deng , Maxime Ripard , Mauro Carvalho Chehab , Rob Herring , Mark Rutland , David Miller , Greg Kroah-Hartman , Andrew Morton , Arnd Bergmann , Hans Verkuil , Geert Uytterhoeven , Jacob Chen , Neil Armstrong , Thierry Reding , Philipp Zabel , Todor Tomov , Linux Media Mailing List , devicetree , linux-arm-kernel , linux-kernel , linux-sunxi Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On Fri, Sep 28, 2018 at 8:56 PM Sakari Ailus wrote: > > Hi Chen-Yu, > > On Fri, Sep 28, 2018 at 07:10:58PM +0800, Chen-Yu Tsai wrote: > > On Fri, Sep 28, 2018 at 6:23 PM Sakari Ailus > > wrote: > > > > > > Hi Laurent, > > > > > > On Fri, Sep 28, 2018 at 12:45:12PM +0300, Laurent Pinchart wrote: > > > > Hi Sakari, > > > > > > > > On Friday, 28 September 2018 12:38:33 EEST Sakari Ailus wrote: > > > > > 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. > > > > > > > > There are two CSI devices, named CSI0 and CSI1, with one port each. The CSI0 > > > > device supports CSI-2 only, and the CSI1 device parallel (BT.601 or BT.656) > > > > only. > > > > > > > > > > + > > > > > > +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. > > > > > > > > I enquired about that too. As far as I understand, CSI0 isn't supported yet in > > > > the driver due to lack of documentation and lack of open-source vendor- > > > > provided source code. While DT bindings are not tied to driver > > > > implementations, it's not the best idea to design DT bindings without at least > > > > one working implementation to test them. I thus proposed just listing CSI0 as > > > > being unsupported for now. > > > > > > Ack. > > > > > > We should still define which receiver corresponds to a given port. Probably > > > 1 for CSI1 would make sense, in order to avoid changing the order the > > > hardware already uses. 0 doesn't need to be documented no IMO. > > > > > > What do you think? > > > > AFAICT it would be a completely seperate node, since they have different address > > spaces, clocks and reset controls. So there's no possibility of confusion. > > > > According to Yong, CSI0 is tied internally to some unknown MIPI CSI2-receiver, > > which is the undocumented part. CSI1 has its parallel data pins exposed to the > > outside. > > Thanks for clearing up the confusion. If these are truly different kinds of > devices, then don't they also deserve different compatible strings? And > possibly also different DT binding documentation in a separate file. Allwinner's documents aren't particularly clear about this. AFAICT it does not say anything about them being different. The CSI section gives a register table with two base addresses. The V3S SDK listed on linux-sunxi wiki also doesn't differentiate between the two. What's more is there's actually code and register addresses for the MIPI stuff [1], though the license is questionable, as with most BSPs. It indeed seems like a CSI controller, which basically just takes whatever input it is configured for and sends it to either a downstream ISP or DRAM. There are MIPI-CSI receiver and DPHY blocks in addresses following CSI0, but we can treat them as separate hardware blocks. ChenYu [1] https://github.com/yeashen/v3s-linux-sdk/blob/master/linux-3.4/drivers/media/video/sunxi-vfe/platform/sun8iw8p1_vfe_cfg.h#L27