18c2ecf20Sopenharmony_ciRockchip RK3288 specific extensions to the Analogix Display Port
28c2ecf20Sopenharmony_ci================================
38c2ecf20Sopenharmony_ci
48c2ecf20Sopenharmony_ciRequired properties:
58c2ecf20Sopenharmony_ci- compatible: "rockchip,rk3288-dp",
68c2ecf20Sopenharmony_ci	      "rockchip,rk3399-edp";
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci- reg: physical base address of the controller and length
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci- clocks: from common clock binding: handle to dp clock.
118c2ecf20Sopenharmony_ci	  of memory mapped region.
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci- clock-names: from common clock binding:
148c2ecf20Sopenharmony_ci	       Required elements: "dp" "pclk"
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci- resets: Must contain an entry for each entry in reset-names.
178c2ecf20Sopenharmony_ci	  See ../reset/reset.txt for details.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci- pinctrl-names: Names corresponding to the chip hotplug pinctrl states.
208c2ecf20Sopenharmony_ci- pinctrl-0: pin-control mode. should be <&edp_hpd>
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ci- reset-names: Must include the name "dp"
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci- rockchip,grf: this soc should set GRF regs, so need get grf here.
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci- ports: there are 2 port nodes with endpoint definitions as defined in
278c2ecf20Sopenharmony_ci  Documentation/devicetree/bindings/media/video-interfaces.txt.
288c2ecf20Sopenharmony_ci    Port 0: contained 2 endpoints, connecting to the output of vop.
298c2ecf20Sopenharmony_ci    Port 1: contained 1 endpoint, connecting to the input of panel.
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciOptional property for different chips:
328c2ecf20Sopenharmony_ci- clocks: from common clock binding: handle to grf_vio clock.
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci- clock-names: from common clock binding:
358c2ecf20Sopenharmony_ci	       Required elements: "grf"
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciFor the below properties, please refer to Analogix DP binding document:
388c2ecf20Sopenharmony_ci * Documentation/devicetree/bindings/display/bridge/analogix_dp.txt
398c2ecf20Sopenharmony_ci- phys (required)
408c2ecf20Sopenharmony_ci- phy-names (required)
418c2ecf20Sopenharmony_ci- hpd-gpios (optional)
428c2ecf20Sopenharmony_ci- force-hpd (optional)
438c2ecf20Sopenharmony_ci-------------------------------------------------------------------------------
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ciExample:
468c2ecf20Sopenharmony_ci	dp-controller: dp@ff970000 {
478c2ecf20Sopenharmony_ci		compatible = "rockchip,rk3288-dp";
488c2ecf20Sopenharmony_ci		reg = <0xff970000 0x4000>;
498c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
508c2ecf20Sopenharmony_ci		clocks = <&cru SCLK_EDP>, <&cru PCLK_EDP_CTRL>;
518c2ecf20Sopenharmony_ci		clock-names = "dp", "pclk";
528c2ecf20Sopenharmony_ci		phys = <&dp_phy>;
538c2ecf20Sopenharmony_ci		phy-names = "dp";
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ci		rockchip,grf = <&grf>;
568c2ecf20Sopenharmony_ci		resets = <&cru 111>;
578c2ecf20Sopenharmony_ci		reset-names = "dp";
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ci		pinctrl-names = "default";
608c2ecf20Sopenharmony_ci		pinctrl-0 = <&edp_hpd>;
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci		ports {
648c2ecf20Sopenharmony_ci			#address-cells = <1>;
658c2ecf20Sopenharmony_ci			#size-cells = <0>;
668c2ecf20Sopenharmony_ci			edp_in: port@0 {
678c2ecf20Sopenharmony_ci				reg = <0>;
688c2ecf20Sopenharmony_ci				#address-cells = <1>;
698c2ecf20Sopenharmony_ci				#size-cells = <0>;
708c2ecf20Sopenharmony_ci				edp_in_vopb: endpoint@0 {
718c2ecf20Sopenharmony_ci					reg = <0>;
728c2ecf20Sopenharmony_ci					remote-endpoint = <&vopb_out_edp>;
738c2ecf20Sopenharmony_ci				};
748c2ecf20Sopenharmony_ci				edp_in_vopl: endpoint@1 {
758c2ecf20Sopenharmony_ci					reg = <1>;
768c2ecf20Sopenharmony_ci					remote-endpoint = <&vopl_out_edp>;
778c2ecf20Sopenharmony_ci				};
788c2ecf20Sopenharmony_ci			};
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci			edp_out: port@1 {
818c2ecf20Sopenharmony_ci				reg = <1>;
828c2ecf20Sopenharmony_ci				#address-cells = <1>;
838c2ecf20Sopenharmony_ci				#size-cells = <0>;
848c2ecf20Sopenharmony_ci				edp_out_panel: endpoint {
858c2ecf20Sopenharmony_ci					reg = <0>;
868c2ecf20Sopenharmony_ci					remote-endpoint = <&panel_in_edp>
878c2ecf20Sopenharmony_ci				};
888c2ecf20Sopenharmony_ci			};
898c2ecf20Sopenharmony_ci		};
908c2ecf20Sopenharmony_ci	};
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci	pinctrl {
938c2ecf20Sopenharmony_ci		edp {
948c2ecf20Sopenharmony_ci			edp_hpd: edp-hpd {
958c2ecf20Sopenharmony_ci				rockchip,pins = <7 11 RK_FUNC_2 &pcfg_pull_none>;
968c2ecf20Sopenharmony_ci			};
978c2ecf20Sopenharmony_ci		};
988c2ecf20Sopenharmony_ci	};
99