1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
Device-Tree bindings for Xilinx ZynqMP DisplayPort Subsystem
The ZynqMP DisplayPort subsystem handles DMA channel buffer management,
blending, and audio mixing. The DisplayPort subsystem receives display
and audio frames from DPDMA and transmits output to the DisplayPort IP core.
Required properties:
- compatible: Should be "xlnx,dpdma".
- reg: Base address and size of the IP core.
- interrupts: Interrupt number.
- interrupts-parent: phandle for interrupt controller.
- clocks: phandle for AXI clock
- clock-names: The identification string, "axi_clk", is always required.
Required child node properties:
- compatible: Should be one of "xlnx,video0", "xlnx,video1", "xlnx,video2",
"xlnx,graphics", "xlnx,audio0", or "xlnx,audio1".
Example:
xlnx_dpdma: axidpdma@43c10000 {
compatible = "xlnx,dpdma";
reg = <0x43c10000 0x1000>;
interrupts = <0 54 4>;
interrupt-parent = <&intc>;
clocks = <&clkc 16>;
clock-names = "axi_clk";
xlnx,axi-clock-freq = <200000000>;
dma-channels = <6>;
#dma-cells = <1>;
dma-video0channel@43c10000 {
compatible = "xlnx,video0";
};
dma-video1channel@43c10000 {
compatible = "xlnx,video1";
};
dma-video2channel@43c10000 {
compatible = "xlnx,video2";
};
dma-graphicschannel@43c10000 {
compatible = "xlnx,graphics";
};
dma-audio0channel@43c10000 {
compatible = "xlnx,audio0";
};
dma-audio1channel@43c10000 {
compatible = "xlnx,audio1";
};
};
* DMA client
Required properties:
- dmas: a list of <[DPDMA device phandle] [Channel ID]> pairs. "Channel ID"
is defined as video0 = 0, video1 = 1, video2 = 2, graphics = 3, audio0 = 4,
and audio1 = 5.
Example:
xilinx_drm {
compatible = "xlnx,drm";
xlnx,encoder-slave = <&xlnx_dp>;
clocks = <&si570 0>;
xlnx,connector-type = "DisplayPort";
xlnx,dp-sub = <&xlnx_dp_sub>;
planes {
xlnx,pixel-format = "rgb565";
plane0 {
dmas = <&xlnx_dpdma 3>;
dma-names = "dma";
};
plane1 {
dmas = <&xlnx_dpdma 0>;
dma-names = "dma";
};
};
};
xlnx_dp_snd_pcm0: dp_snd_pcm0 {
compatible = "xlnx,dp-snd-pcm";
dmas = <&xlnx_dpdma 4>;
dma-names = "tx";
};
xlnx_dp_snd_pcm1: dp_snd_pcm1 {
compatible = "xlnx,dp-snd-pcm";
dmas = <&xlnx_dpdma 5>;
dma-names = "tx";
};
|