Thread (1 message) 1 message, 1 author, 2018-01-11

RE: [PATCH 01/10] dt-bindings: display: xlnx: Add Xilinx kms bindings

From: Hyun Kwon <hidden>
Date: 2018-01-11 19:22:45
Also in: dri-devel

Hi Rob,
-----Original Message-----
From: Rob Herring [mailto:robh@kernel.org]
Sent: Thursday, January 11, 2018 6:43 AM
To: Hyun Kwon <redacted>
Cc: dri-devel@lists.freedesktop.org; devicetree@vger.kernel.org; Michal
Simek [off-list ref]
Subject: Re: [PATCH 01/10] dt-bindings: display: xlnx: Add Xilinx kms
bindings

On Wed, Jan 10, 2018 at 8:04 PM, Hyun Kwon [off-list ref] wrote:
quoted
Hi Rob,

Thanks for the feedback.
quoted
-----Original Message-----
From: Rob Herring [mailto:robh@kernel.org]
Sent: Monday, January 08, 2018 8:00 PM
To: Hyun Kwon <redacted>
Cc: dri-devel@lists.freedesktop.org; devicetree@vger.kernel.org; Michal
Simek [off-list ref]
Subject: Re: [PATCH 01/10] dt-bindings: display: xlnx: Add Xilinx kms
bindings

On Thu, Jan 04, 2018 at 06:05:50PM -0800, Hyun Kwon wrote:
quoted
The dt binding for Xilinx DRM KMS driver.
Bindings are for h/w, not drivers.
I'll rephrase this.
quoted
quoted
Signed-off-by: Hyun Kwon <redacted>
---
 .../devicetree/bindings/display/xlnx/xlnx,kms.txt    | 20
++++++++++++++++++++
quoted
 1 file changed, 20 insertions(+)
 create mode 100644
Documentation/devicetree/bindings/display/xlnx/xlnx,kms.txt
quoted
diff --git
a/Documentation/devicetree/bindings/display/xlnx/xlnx,kms.txt
quoted
quoted
b/Documentation/devicetree/bindings/display/xlnx/xlnx,kms.txt
quoted
new file mode 100644
index 0000000..8dcd552
--- /dev/null
+++ b/Documentation/devicetree/bindings/display/xlnx/xlnx,kms.txt
@@ -0,0 +1,20 @@
+Xilinx KMS Pipeline
+-------------------
+
+Xilinx display pipelines can be designed with hardened video IPs and
soft
quoted
quoted
video
quoted
+IPs in programmable logic. This KMS module provides the common
functionality
quoted
+of individual subdevice drivers, and glue logics between them.
+
+Required properties:
+
+- compatible: Must be "xlnx,kms".
I'll also rephrase the description and rename this to xlnx,display.
quoted
quoted
+
+- ports: phandles for CRTC ports, using the DT bindings defined in
+  Documentation/devicetree/bindings/graph.txt.
This use of ports is not part of the graph binding.
I'll add more details in the description.
quoted
quoted
+
+Example:
+
+   xlnx_drm: xlnx_drm {
+           compatible = "xlnx,kms";
drm and kms are Linuxisms.
I agree. I'll remove linux subsystem specific terms.
quoted
Why do you need this node?
This node is used to represent a display pipeline as a single entity, which
can consist of multiple components / IPs. I'll elaborate more per your
suggestion.

You generally don't need that. Just have the DRM driver match with the
first block in the display pipeline. Then use the OF graph to connect
to the other components in the pipeline. It would help to have a block
diagram showing the data pipelines and h/w blocks.
Some examples are as following. In simple case, a pipeline is linear with multiple blocks:

ZynqMP DisplayPort pipeline:

	ZynqMP DMA -> ZynqMP Display controller -> ZynqMP DP encoder

FPGA display pipeline where each block comes as a separate device:

	FPGA DMA -> FPGA mixer -> FPGA HDMI encoder

It gets more interesting as those can be mixed:

	ZynqMP DMA -> ZynqMP Display controller -> ZynqMP DP encoder
		            |
	FPAG DMA ->
or

	ZynqMP DMA -> ZynqMP Display controller -> ZynqMP DP encoder
						         |
						         -> FPGA HDMI encoder
		            
Or even,

			ZynqMP DMA -> ZynqMP Display controller -> ZynqMP DP encoder
				            |			          |
	FPAG DMA -> FPGA mixer ->				          -> FPGA HDMI encoder

This node is representation of such variations as a single pipeline device.

Thanks,
-hyun
Rob
N�����r��y���b�X��ǧv�^�)޺{.n�+���z��z��z)���w*jg���
�����ݢj.�۰\��M��gj��a����' ��ޢ�
���j:+v���w�j�m��������zZ+�����ݢj"��!�i
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help