All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.