devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Hyun Kwon <hyunk@xilinx.com>
To: Rob Herring <robh@kernel.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>,
	Michal Simek <michal.simek@xilinx.com>
Subject: RE: [PATCH v3 3/8] dt-bindings: display: xlnx: Add ZynqMP DP subsystem bindings
Date: Sat, 20 Jan 2018 02:22:40 +0000	[thread overview]
Message-ID: <CY4PR02MB24889A5465A0F346CB515D84D6EE0@CY4PR02MB2488.namprd02.prod.outlook.com> (raw)
In-Reply-To: <20180120003111.bxra3hrt2mnajb76@rob-hp-laptop>

Hi Rob,

Thanks for the review.

> -----Original Message-----
> From: dri-devel [mailto:dri-devel-bounces@lists.freedesktop.org] On Behalf
> Of Rob Herring
> Sent: Friday, January 19, 2018 4:31 PM
> To: Hyun Kwon <hyunk@xilinx.com>
> Cc: devicetree@vger.kernel.org; Laurent Pinchart
> <laurent.pinchart@ideasonboard.com>; Michal Simek
> <michal.simek@xilinx.com>; dri-devel@lists.freedesktop.org; Daniel Vetter
> <daniel.vetter@ffwll.ch>
> Subject: Re: [PATCH v3 3/8] dt-bindings: display: xlnx: Add ZynqMP DP
> subsystem bindings
> 
> On Mon, Jan 15, 2018 at 05:57:06PM -0800, Hyun Kwon wrote:
> > This add a dt binding for ZynqMP DP subsystem.
> >
> > Signed-off-by: Hyun Kwon <hyun.kwon@xilinx.com>
> > ---
> > v2
> > - Group multiple ports under 'ports'
> > - Replace linux specific terms with generic hardware descriptions
> > ---
> > ---
> >  .../bindings/display/xlnx/xlnx,zynqmp-dpsub.txt    | 98
> ++++++++++++++++++++++
> >  1 file changed, 98 insertions(+)
> >  create mode 100644
> Documentation/devicetree/bindings/display/xlnx/xlnx,zynqmp-dpsub.txt
> >
> > diff --git a/Documentation/devicetree/bindings/display/xlnx/xlnx,zynqmp-
> dpsub.txt b/Documentation/devicetree/bindings/display/xlnx/xlnx,zynqmp-
> dpsub.txt
> > new file mode 100644
> > index 0000000..dbcbde5
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/display/xlnx/xlnx,zynqmp-
> dpsub.txt
> > @@ -0,0 +1,98 @@
> > +Xilinx ZynqMP DisplayPort subsystem
> > +-----------------------------------
> > +
> > +Required properties:
> > +
> > +- compatible: Must be "xlnx,zynqmp-dpsub-1.7".
> > +
> > +- reg: Physical base address and length of the registers set for the device.
> > +- reg-names: Must be "dp", "blend", "av_buf", and "aud" to map logical
> register
> > +  partitions.
> > +
> > +- interrupts: Interrupt number.
> > +- interrupts-parent: phandle for interrupt controller.
> > +
> > +- clocks: phandles for axi, audio, non-live video, and live video clocks.
> > +  axi clock is required. Audio clock is optional. If not present, audio will
> > +  be disabled. One of non-live or live video clock should be present.
> > +- clock-names: The identification strings are required. "aclk" for axi clock.
> > +  "dp_aud_clk" for audio clock. "dp_vtc_pixel_clk_in" for non-live video
> clock.
> > +  "dp_live_video_in_clk" for live video clock (clock from programmable
> logic).
> > +
> > +- phys: phandles for phy specifier.
> 
> phandles? How many?
> 

Configurable between 1 or 2 lanes. Will add more details.

> > +- phy-names: The identifier strings. "dp-phy" followed by index.
> > +
> > +- power-domains: phandle for the corresponding power domain
> > +
> > +- ports: There are 2 logical blocks in the IP: display controller and
> > +  DisplayPort encoder. Each block can be used / connected independently
> with
> 
> I'm confused. The block described in this doc is just DisplayPort
> encoder or both display controller and DisplayPort? Or something else?
> 

The DP subsystem includes both block, protocol indipendent controller in front
and the DisplayPort transmitter in the back. I'll try to elaborate / clarify
better.

> > +  external device, hence ports for each block are required using DT
> bindings
> > +  defined in Documentation/devicetree/bindings/graph.txt. Refer to
> > +  ./xlnx,display.txt for how topology for entire pipeline is described.
> > +
> > +- vid-layer, gfx-layer: Required to represent available layers
> > +
> > +Required layer properties
> > +
> > +- dmas: phandles for DMA channels as defined in
> > +  Documentation/devicetree/bindings/dma/dma.txt.
> > +- dma-names: The identifier strings are required. "graphics0" for graphics
> > +  layer. "video" followed by index for video layer
> > +
> > +Optional child node
> > +
> > +- The driver populates any child device node in this node. This can be
> used,
> > +  for example, to populate the sound device from the DisplayPort
> subsystem
> > +  driver.
> > +
> > +Example:
> > +       zynqmp_dpsub: zynqmp_dpsub@fd4a0000 {
> 
> video-codec@... if this the DP encoder.
> 
> > +               compatible = "xlnx,zynqmp-dpsub-1.7";
> > +               reg = <0x0 0xfd4a0000 0x0 0x1000>,
> > +                     <0x0 0xfd4aa000 0x0 0x1000>,
> > +                     <0x0 0xfd4ab000 0x0 0x1000>,
> > +                     <0x0 0xfd4ac000 0x0 0x1000>;
> > +               reg-names = "dp", "blend", "av_buf", "aud";
> > +               interrupts = <0 119 4>;
> > +               interrupt-parent = <&gic>;
> > +
> > +               clock-names = "dp_apb_clk", "dp_aud_clk",
> "dp_live_video_in_clk";
> > +               clocks = <&dp_aclk>, <&clkc 17>, <&si570_1>;
> > +
> > +               phys = <&lane1>, <&lane0>;
> > +               phy-names = "dp-phy0", "dp-phy1";
> > +
> > +               power-domains = <&pd_dp>;
> > +
> > +               vid-layer {
> > +                       dma-names = "vid0", "vid1", "vid2";
> 
> Documentation says these should be "videoX".
> 

Will fix.

> > +                       dmas = <&xlnx_dpdma 0>,
> > +                              <&xlnx_dpdma 1>,
> > +                              <&xlnx_dpdma 2>;
> > +               };
> > +
> > +               gfx-layer {
> > +                       dma-names = "gfx0";
> 
> And "graphics0"
> 

Will fix.

> > +                       dmas = <&xlnx_dpdma 3>;
> > +               };
> 
> You don't need these child nodes. Just do:
> 
> dma-names = "vid0", "vid1", "vid2", "gfx0";
> 
> Or gfx0 first.
> 

Sure. As mentioned earlier, each layer will have to be referenced independently
by other nodes in upcoming patches. But I can follow your suggestion for now,
and make change when it's needed.

Thanks,
-hyun

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2018-01-20  2:22 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-16  1:57 [PATCH v3 1/8] dt-bindings: display: xlnx: Add bindings for Xilinx display pipeline Hyun Kwon
     [not found] ` <1516067831-11382-1-git-send-email-hyun.kwon-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2018-01-16  1:57   ` [PATCH v3 2/8] drm: xlnx: Xilinx DRM KMS driver Hyun Kwon
     [not found]     ` <1516067831-11382-2-git-send-email-hyun.kwon-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2018-01-17  8:11       ` Daniel Vetter
2018-01-17  8:20     ` Daniel Vetter
2018-01-19 23:33       ` Rob Herring
     [not found]       ` <20180117082028.GC2759-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2018-01-26  1:36         ` Hyun Kwon
2018-01-16  1:57   ` [PATCH v3 3/8] dt-bindings: display: xlnx: Add ZynqMP DP subsystem bindings Hyun Kwon
     [not found]     ` <1516067831-11382-3-git-send-email-hyun.kwon-gjFFaj9aHVfQT0dZR+AlfA@public.gmane.org>
2018-01-20  0:31       ` Rob Herring
2018-01-20  2:22         ` Hyun Kwon [this message]
2018-01-22 14:36           ` Rob Herring
2018-01-16  1:57   ` [PATCH v3 4/8] drm: xlnx: DRM KMS driver for Xilinx ZynqMP DP subsystem display Hyun Kwon
2018-01-16  1:57   ` [PATCH v3 5/8] drm: xlnx: DRM KMS driver for Xilinx ZynqMP DisplayPort Hyun Kwon
2018-01-16  1:57   ` [PATCH v3 6/8] drm: xlnx: ZynqMP DP subsystem DRM KMS driver Hyun Kwon
2018-01-16  1:57 ` [PATCH v3 7/8] drm: xlnx: zynqmp_disp: Add drm properties Hyun Kwon
2018-01-16  1:57 ` [PATCH v3 8/8] drm: xlnx: zynqmp_dp: " Hyun Kwon
2018-01-19 23:32 ` [PATCH v3 1/8] dt-bindings: display: xlnx: Add bindings for Xilinx display pipeline Rob Herring
2018-01-20  2:22   ` Hyun Kwon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CY4PR02MB24889A5465A0F346CB515D84D6EE0@CY4PR02MB2488.namprd02.prod.outlook.com \
    --to=hyunk@xilinx.com \
    --cc=daniel.vetter@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=michal.simek@xilinx.com \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).