Merge tag 'tag-chrome-platform-for-v4.20' of git://git.kernel.org/pub/scm/linux/kerne...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / display / rockchip / rockchip-vop.txt
1 device-tree bindings for rockchip soc display controller (vop)
2
3 VOP (Visual Output Processor) is the Display Controller for the Rockchip
4 series of SoCs which transfers the image data from a video memory
5 buffer to an external LCD interface.
6
7 Required properties:
8 - compatible: value should be one of the following
9                 "rockchip,rk3036-vop";
10                 "rockchip,rk3126-vop";
11                 "rockchip,px30-vop-lit";
12                 "rockchip,px30-vop-big";
13                 "rockchip,rk3188-vop";
14                 "rockchip,rk3288-vop";
15                 "rockchip,rk3368-vop";
16                 "rockchip,rk3366-vop";
17                 "rockchip,rk3399-vop-big";
18                 "rockchip,rk3399-vop-lit";
19                 "rockchip,rk3228-vop";
20                 "rockchip,rk3328-vop";
21
22 - interrupts: should contain a list of all VOP IP block interrupts in the
23                  order: VSYNC, LCD_SYSTEM. The interrupt specifier
24                  format depends on the interrupt controller used.
25
26 - clocks: must include clock specifiers corresponding to entries in the
27                 clock-names property.
28
29 - clock-names: Must contain
30                 aclk_vop: for ddr buffer transfer.
31                 hclk_vop: for ahb bus to R/W the phy regs.
32                 dclk_vop: pixel clock.
33
34 - resets: Must contain an entry for each entry in reset-names.
35   See ../reset/reset.txt for details.
36 - reset-names: Must include the following entries:
37   - axi
38   - ahb
39   - dclk
40
41 - iommus: required a iommu node
42
43 - port: A port node with endpoint definitions as defined in
44   Documentation/devicetree/bindings/media/video-interfaces.txt.
45
46 Example:
47 SoC specific DT entry:
48         vopb: vopb@ff930000 {
49                 compatible = "rockchip,rk3288-vop";
50                 reg = <0xff930000 0x19c>;
51                 interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
52                 clocks = <&cru ACLK_VOP0>, <&cru DCLK_VOP0>, <&cru HCLK_VOP0>;
53                 clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
54                 resets = <&cru SRST_LCDC1_AXI>, <&cru SRST_LCDC1_AHB>, <&cru SRST_LCDC1_DCLK>;
55                 reset-names = "axi", "ahb", "dclk";
56                 iommus = <&vopb_mmu>;
57                 vopb_out: port {
58                         #address-cells = <1>;
59                         #size-cells = <0>;
60                         vopb_out_edp: endpoint@0 {
61                                 reg = <0>;
62                                 remote-endpoint=<&edp_in_vopb>;
63                         };
64                         vopb_out_hdmi: endpoint@1 {
65                                 reg = <1>;
66                                 remote-endpoint=<&hdmi_in_vopb>;
67                         };
68                 };
69         };