Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp3721591imm; Mon, 4 Jun 2018 08:14:48 -0700 (PDT) X-Google-Smtp-Source: ADUXVKL708UHnt2xumSS6HvdwKOYiWCJJMiYMmc1oumOZTHXzaqn/o8WXXK8Nv3q7bHdp/KZbO/7 X-Received: by 2002:a17:902:d697:: with SMTP id v23-v6mr13801396ply.193.1528125288173; Mon, 04 Jun 2018 08:14:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528125288; cv=none; d=google.com; s=arc-20160816; b=i2tYIlEA/o3r9NP0p0Zt2uRkTL3Ry9ip8mjVHWtLn+KJNLGhu3JuP5cGP1NB83bJp7 fHSUoOz1TCXjgz2HT0WN6BSaEoRvy9f6vORIwgy190r8zpv4DD6N7jHLTfs1p69MZa1L dVdcrPzcEtjHFbpk/ZI30PI4PockXUMl5HxARCHDKmxxn/SzuMrlJpMl5sqORVRNaqld 3vA6K35xkO1K5EIJFS0lBIamBV3UR+2MIrHV6aZ5zhpWlKn5KrMGh1WEEW2IQjndJET4 x0a4fccKp6o6fVdtVxeKVu51EJ148yrAv9HSnNZW66izLqEuug4xqdXP7B00vywjOxnj odtQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:arc-authentication-results; bh=yoAQrSB4IyhvW1j+jc6jnVsTtMscfhhsT1zJwb71B8w=; b=bhGQC9IPABJzbGUAr7ln7W8RAw6EfDDp6Xbo8KD7bF7v2Y2Y6L9QsRaWHYylhjz1ww 64V2ksw40i5X8GmlB+zhnje0gqJdjq4UAbmadmxkFm/MMBSxhrwXpHPn46CHB35fodPP Yat9rsVSoSCwlAZH93KJWJDjg9X7j+gbQuNhDn5BvOUGUPzTwcCbUfph/P1iZUM+Gk7G 5vh+szJ7soW5Eu9w/A7rMPJpCdLN/lhcg/0Klg5JipFB86qL7jLoQ6fEhvzTtCmbNUxi YQG6EzEGj02lhN8YnQcb+1UzBCRjZMdkuEa1LDAHJRJGs1NYlIk3A95mjiPmF8/n9Yjr l7kQ== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u13-v6si15927473pgq.585.2018.06.04.08.14.32; Mon, 04 Jun 2018 08:14:48 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753590AbeFDPOB (ORCPT + 99 others); Mon, 4 Jun 2018 11:14:01 -0400 Received: from mail-pf0-f194.google.com ([209.85.192.194]:43236 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752518AbeFDPN7 (ORCPT ); Mon, 4 Jun 2018 11:13:59 -0400 Received: by mail-pf0-f194.google.com with SMTP id j20-v6so16191103pff.10; Mon, 04 Jun 2018 08:13:59 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=yoAQrSB4IyhvW1j+jc6jnVsTtMscfhhsT1zJwb71B8w=; b=B+qO6jNl3kUyAhVWnAgYaukQAAkgXARPo1Mz6nkafzGBa8GMba9dF8nPc9msa7yNuj Y1U6pNRfjCuLqlZqkPMV9H7xfyuWUh65VX2/jFKfx2yqihB/3LdsIi/d2uIOqQsM/ep2 bHVquHgs7ofXLsYE1kEnehP6ndYcdvf7qzTa74FVjgsF7Y6AJ7Is9V2amNO4isSEK9sf 1X2w916ivIC5aLfBM7QAhYsyh9fszbGiqfmrZDW1Xouy2FD/wumdGl9shFPAFWoPEkPD MYKVsnrGRti2a01D2671zFlQkwb7gn3EjKucl28ZIVMxVw3W6Kbg3Q2Vk7afIIX4wTHk QhZw== X-Gm-Message-State: ALKqPwe1azE/Hsp3rszzhfzaq2o+BJHGrFJ0vpp4yZUdp2ObX9Tdwx/t 3sdjGp0LlU7lvfZC1Tikuw== X-Received: by 2002:a63:b307:: with SMTP id i7-v6mr17538299pgf.448.1528125239108; Mon, 04 Jun 2018 08:13:59 -0700 (PDT) Received: from localhost (24-223-123-72.static.usa-companies.net. [24.223.123.72]) by smtp.gmail.com with ESMTPSA id b84-v6sm52176224pfm.123.2018.06.04.08.13.58 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 04 Jun 2018 08:13:58 -0700 (PDT) Date: Mon, 4 Jun 2018 10:13:57 -0500 From: Rob Herring To: "Hean-Loong, Ong" Cc: Dinh Nguyen , Daniel Vetter , Laurent Pinchart , Randy Dunlap , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org, Ong@rob-hp-laptop Subject: Re: [PATCHv9 1/3] ARM:dt-bindings:display Intel FPGA Video and Image Processing Suite Message-ID: <20180604151357.GA13693@rob-hp-laptop> References: <1528094404-3542-1-git-send-email-hean.loong.ong@intel.com> <1528094404-3542-2-git-send-email-hean.loong.ong@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1528094404-3542-2-git-send-email-hean.loong.ong@intel.com> User-Agent: Mutt/1.9.4 (2018-02-28) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jun 04, 2018 at 02:40:02PM +0800, Hean-Loong, Ong wrote: > From: Ong, Hean Loong > > Device tree binding for Intel FPGA Video and Image Processing Suite. The binding involved would be generated from the Altera (Intel) Qsys system. The bindings would set the max width, max height, buts per pixel and memory port width. The device tree binding only supports the Intel > Arria10 devkit and its variants. Vendor name retained as altr. You need to wrap long lines. > > V8: > *Add port to Display port decoder > > V7: > *Fix OF graph for better description > *Add description for encoder > > V6: > *Description have not describe DT device in general > > V5: > *remove bindings for bits per symbol as it has only one value which is 8 > > V4: > *fix properties that does not describe the values > > V3: > *OF graph not in accordance to graph.txt > > V2: > *Remove Linux driver description > > V1: > *Missing vendor prefix > > Signed-off-by: Ong, Hean Loong > --- > .../devicetree/bindings/display/altr,vip-fb2.txt | 99 ++++++++++++++++++++ > 1 files changed, 99 insertions(+), 0 deletions(-) > create mode 100644 Documentation/devicetree/bindings/display/altr,vip-fb2.txt > > diff --git a/Documentation/devicetree/bindings/display/altr,vip-fb2.txt b/Documentation/devicetree/bindings/display/altr,vip-fb2.txt > new file mode 100644 > index 0000000..4092804 > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/altr,vip-fb2.txt > @@ -0,0 +1,99 @@ > +Intel Video and Image Processing(VIP) Frame Buffer II bindings > + > +Supported hardware: Intel FPGA SoC Arria10 and above with display port IP > + > +The Video Frame Buffer II in Video Image Processing (VIP) suite is an IP core > +that interfaces between system memory and Avalon-ST video ports. The IP core > +can be configured to support the memory reader (from memory to Avalon-ST) > +and/or memory writer (from Avalon-ST to memory) interfaces. > + > +More information the FPGA video IP component can be acquired from > +https://www.altera.com/content/dam/altera-www/global/en_US/pdfs\ > +/literature/ug/ug_vip.pdf But URLs you don't need to wrap. > + > +DT-Bindings: > +============= > +Required properties: > +---------------------------- > +- compatible: "altr,vip-frame-buffer-2.0" > +- reg: Physical base address and length of the framebuffer controller's > + registers. > +- altr,max-width: The maximum width of the framebuffer in pixels. > +- altr,max-height: The maximum height of the framebuffer in pixels. > +- altr,mem-port-width = the bus width of the avalon master port > + on the frame reader > + > +Optional sub-nodes: > +- ports: The connection to the encoder > + > +Optional properties These are not optional properties because this is a whole other node. Group things by node (perhaps even make this 2 docments) and within each node you describe required and optional properties. > +---------------------------- > +- compatible: "altr, display-port" spurious space ^ This needs to be more specific. Is there an IP version? This is a DisplayPort encoder? > +- reg: Physical base address and length of the display port controller's > + registers > +- clocks: required clock handles for specified pairs in clock name > +- clock-names: required clock names. Contains: > + - aux_clk: auxiliary clock, > + - clk: 100 MHz output clock But 'clocks' are input clocks. Needs a better name than 'clk'. > + - xcvr_mgmt_clk: transceiver management clock '_clk' is redundant. > + > +Optional sub-nodes: > +- ports: The connection to the controller > + > +Connections between the Frame Buffer II and other video IP cores in the system > +are modelled using the OF graph DT bindings. The Frame Buffer II node has up s/modelled/modeled/ > +to two OF graph ports. When the memory writer interface is enabled, port 0 > +maps to the Avalon-ST Input (din) port. When the memory reader interface is > +enabled, port 1 maps to the Avalon-ST Output (dout) port. > + > +The encoder is built into the FPGA HW design and therefore would not > +be accessible from the DDR. > + > + Port 0 Port1 > +--------------------------------------------------------- > +ARRIA10 AVALON_ST (DIN) AVALON_ST (DOUT) > + > +Required Properties Example: > +---------------------------- > + > +framebuffer@100000280 { > + compatible = "altr,vip-frame-buffer-2.0"; > + reg = <0x00000001 0x00000280 0x00000040>; > + altr,max-width = <1280>; > + altr,max-height = <720>; > + altr,mem-port-width = <128>; Doesn't this block require some clocks too? > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@1 { > + reg = <1>; > + fb_output: endpoint { > + remote-endpoint = <&dp_encoder_input>; > + }; > + }; > + }; > +}; > + > +Optional Properties Example: > +This is not required unless there are needs to customize > +Display Port controller settings. > + > +displayport@100002000 { > + compatible = "altr, display-port"; > + reg = <0x00000001 0x00002000 0x00000800>; > + clocks = <&dp_0_clk_16 &dp_0_clk_100 &dp_0_clk_100>; > + clock-names = "aux_clk", "clk", "xcvr_mgmt_clk"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <1>; > + dp_input: endpoint { > + remote-endpoint = <&dp_controller_input>; > + }; > + }; > +}; > -- > 1.7.1 >