summaryrefslogtreecommitdiffstats
path: root/kernel/Documentation/devicetree/bindings/display/exynos/exynos_dsim.txt
blob: 0e6f0c02485878ecf60a3b9b73ecb09417d8ab4d (plain)
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
92
93
94
95
96
97
98
99
100
101
102
103
Exynos MIPI DSI Master

Required properties:
  - compatible: value should be one of the following
		"samsung,exynos3250-mipi-dsi" /* for Exynos3250/3472 SoCs */
		"samsung,exynos4210-mipi-dsi" /* for Exynos4 SoCs */
		"samsung,exynos4415-mipi-dsi" /* for Exynos4415 SoC */
		"samsung,exynos5410-mipi-dsi" /* for Exynos5410/5420/5440 SoCs */
		"samsung,exynos5433-mipi-dsi" /* for Exynos5433 SoCs */
  - reg: physical base address and length of the registers set for the device
  - interrupts: should contain DSI interrupt
  - clocks: list of clock specifiers, must contain an entry for each required
    entry in clock-names
  - clock-names: should include "bus_clk"and "sclk_mipi" entries
		 the use of "pll_clk" is deprecated
  - phys: list of phy specifiers, must contain an entry for each required
    entry in phy-names
  - phy-names: should include "dsim" entry
  - vddcore-supply: MIPI DSIM Core voltage supply (e.g. 1.1V)
  - vddio-supply: MIPI DSIM I/O and PLL voltage supply (e.g. 1.8V)
  - samsung,pll-clock-frequency: specifies frequency of the oscillator clock
  - #address-cells, #size-cells: should be set respectively to <1> and <0>
    according to DSI host bindings (see MIPI DSI bindings [1])

Optional properties:
  - power-domains: a phandle to DSIM power domain node

Child nodes:
  Should contain DSI peripheral nodes (see MIPI DSI bindings [1]).

Video interfaces:
  Device node can contain video interface port nodes according to [2].
  The following are properties specific to those nodes:

  port node inbound:
    - reg: (required) must be 0.
  port node outbound:
    - reg: (required) must be 1.

  endpoint node connected from mic node (reg = 0):
    - remote-endpoint: specifies the endpoint in mic node. This node is required
		       for Exynos5433 mipi dsi. So mic can access to panel node
		       thoughout this dsi node.
  endpoint node connected to panel node (reg = 1):
    - remote-endpoint: specifies the endpoint in panel node. This node is
		       required in all kinds of exynos mipi dsi to represent
		       the connection between mipi dsi and panel.
    - samsung,burst-clock-frequency: specifies DSI frequency in high-speed burst
      mode
    - samsung,esc-clock-frequency: specifies DSI frequency in escape mode

[1]: Documentation/devicetree/bindings/display/mipi-dsi-bus.txt
[2]: Documentation/devicetree/bindings/media/video-interfaces.txt

Example:

	dsi@11C80000 {
		compatible = "samsung,exynos4210-mipi-dsi";
		reg = <0x11C80000 0x10000>;
		interrupts = <0 79 0>;
		clocks = <&clock 286>, <&clock 143>;
		clock-names = "bus_clk", "sclk_mipi";
		phys = <&mipi_phy 1>;
		phy-names = "dsim";
		vddcore-supply = <&vusb_reg>;
		vddio-supply = <&vmipi_reg>;
		power-domains = <&pd_lcd0>;
		#address-cells = <1>;
		#size-cells = <0>;
		samsung,pll-clock-frequency = <24000000>;

		panel@1 {
			reg = <0>;
			...
			port {
				panel_ep: endpoint {
					remote-endpoint = <&dsi_ep>;
				};
			};
		};

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;
				decon_to_mic: endpoint {
					remote-endpoint = <&mic_to_decon>;
				};
			};

			port@1 {
				reg = <1>;
				dsi_ep: endpoint {
					reg = <0>;
					samsung,burst-clock-frequency = <500000000>;
					samsung,esc-clock-frequency = <20000000>;
					remote-endpoint = <&panel_ep>;
				};
			};
		};
	};