| Rockchip RK3399 specific extensions to the cdn Display Port |
| ================================ |
| |
| Required properties: |
| - compatible: must be "rockchip,rk3399-cdn-dp" |
| |
| - reg: physical base address of the controller and length |
| |
| - clocks: from common clock binding: handle to dp clock. |
| |
| - clock-names: from common clock binding: |
| Required elements: "core-clk" "pclk" "spdif" "grf" |
| |
| - resets : a list of phandle + reset specifier pairs |
| - reset-names : string of reset names |
| Required elements: "apb", "core", "dptx", "spdif" |
| - power-domains : power-domain property defined with a phandle |
| to respective power domain. |
| - assigned-clocks: main clock, should be <&cru SCLK_DP_CORE> |
| - assigned-clock-rates : the DP core clk frequency, shall be: 100000000 |
| |
| - rockchip,grf: this soc should set GRF regs, so need get grf here. |
| |
| - ports: contain a port nodes with endpoint definitions as defined in |
| Documentation/devicetree/bindings/media/video-interfaces.txt. |
| contained 2 endpoints, connecting to the output of vop. |
| |
| - phys: from general PHY binding: the phandle for the PHY device. |
| |
| - extcon: extcon specifier for the Power Delivery |
| |
| - #sound-dai-cells = it must be 1 if your system is using 2 DAIs: I2S, SPDIF |
| |
| ------------------------------------------------------------------------------- |
| |
| Example: |
| cdn_dp: dp@fec00000 { |
| compatible = "rockchip,rk3399-cdn-dp"; |
| reg = <0x0 0xfec00000 0x0 0x100000>; |
| interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; |
| clocks = <&cru SCLK_DP_CORE>, <&cru PCLK_DP_CTRL>, |
| <&cru SCLK_SPDIF_REC_DPTX>, <&cru PCLK_VIO_GRF>; |
| clock-names = "core-clk", "pclk", "spdif", "grf"; |
| assigned-clocks = <&cru SCLK_DP_CORE>; |
| assigned-clock-rates = <100000000>; |
| power-domains = <&power RK3399_PD_HDCP>; |
| phys = <&tcphy0_dp>, <&tcphy1_dp>; |
| resets = <&cru SRST_DPTX_SPDIF_REC>; |
| reset-names = "spdif"; |
| extcon = <&fusb0>, <&fusb1>; |
| rockchip,grf = <&grf>; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| #sound-dai-cells = <1>; |
| |
| ports { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| dp_in: port { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| dp_in_vopb: endpoint@0 { |
| reg = <0>; |
| remote-endpoint = <&vopb_out_dp>; |
| }; |
| |
| dp_in_vopl: endpoint@1 { |
| reg = <1>; |
| remote-endpoint = <&vopl_out_dp>; |
| }; |
| }; |
| }; |
| }; |