1*bc5998b9SNeil ArmstrongAmlogic Meson Power Controller (deprecated)
2*bc5998b9SNeil Armstrong===========================================
38fca9e95SNeil Armstrong
48fca9e95SNeil ArmstrongThe Amlogic Meson SoCs embeds an internal Power domain controller.
58fca9e95SNeil Armstrong
68fca9e95SNeil ArmstrongVPU Power Domain
78fca9e95SNeil Armstrong----------------
88fca9e95SNeil Armstrong
98fca9e95SNeil ArmstrongThe Video Processing Unit power domain is controlled by this power controller,
108fca9e95SNeil Armstrongbut the domain requires some external resources to meet the correct power
118fca9e95SNeil Armstrongsequences.
128fca9e95SNeil ArmstrongThe bindings must respect the power domain bindings as described in the file
135279a3d8SKrzysztof Kozlowskipower-domain.yaml
148fca9e95SNeil Armstrong
158fca9e95SNeil ArmstrongDevice Tree Bindings:
168fca9e95SNeil Armstrong---------------------
178fca9e95SNeil Armstrong
188fca9e95SNeil ArmstrongRequired properties:
1955d76e83SNeil Armstrong- compatible: should be one of the following :
2055d76e83SNeil Armstrong	- "amlogic,meson-gx-pwrc-vpu" for the Meson GX SoCs
2155d76e83SNeil Armstrong	- "amlogic,meson-g12a-pwrc-vpu" for the Meson G12A SoCs
228fca9e95SNeil Armstrong- #power-domain-cells: should be 0
238fca9e95SNeil Armstrong- amlogic,hhi-sysctrl: phandle to the HHI sysctrl node
248fca9e95SNeil Armstrong- resets: phandles to the reset lines needed for this power demain sequence
258fca9e95SNeil Armstrong	as described in ../reset/reset.txt
268fca9e95SNeil Armstrong- clocks: from common clock binding: handle to VPU and VAPB clocks
278fca9e95SNeil Armstrong- clock-names: from common clock binding: must contain "vpu", "vapb"
288fca9e95SNeil Armstrong	corresponding to entry in the clocks property.
298fca9e95SNeil Armstrong
308fca9e95SNeil ArmstrongParent node should have the following properties :
318fca9e95SNeil Armstrong- compatible: "amlogic,meson-gx-ao-sysctrl", "syscon", "simple-mfd"
328fca9e95SNeil Armstrong- reg: base address and size of the AO system control register space.
338fca9e95SNeil Armstrong
348fca9e95SNeil ArmstrongExample:
358fca9e95SNeil Armstrong-------
368fca9e95SNeil Armstrong
378fca9e95SNeil Armstrongao_sysctrl: sys-ctrl@0 {
388fca9e95SNeil Armstrong	compatible = "amlogic,meson-gx-ao-sysctrl", "syscon", "simple-mfd";
398fca9e95SNeil Armstrong	reg =  <0x0 0x0 0x0 0x100>;
408fca9e95SNeil Armstrong
418fca9e95SNeil Armstrong	pwrc_vpu: power-controller-vpu {
428fca9e95SNeil Armstrong		compatible = "amlogic,meson-gx-pwrc-vpu";
438fca9e95SNeil Armstrong		#power-domain-cells = <0>;
448fca9e95SNeil Armstrong		amlogic,hhi-sysctrl = <&sysctrl>;
458fca9e95SNeil Armstrong		resets = <&reset RESET_VIU>,
468fca9e95SNeil Armstrong			 <&reset RESET_VENC>,
478fca9e95SNeil Armstrong			 <&reset RESET_VCBUS>,
488fca9e95SNeil Armstrong			 <&reset RESET_BT656>,
498fca9e95SNeil Armstrong			 <&reset RESET_DVIN_RESET>,
508fca9e95SNeil Armstrong			 <&reset RESET_RDMA>,
518fca9e95SNeil Armstrong			 <&reset RESET_VENCI>,
528fca9e95SNeil Armstrong			 <&reset RESET_VENCP>,
538fca9e95SNeil Armstrong			 <&reset RESET_VDAC>,
548fca9e95SNeil Armstrong			 <&reset RESET_VDI6>,
558fca9e95SNeil Armstrong			 <&reset RESET_VENCL>,
568fca9e95SNeil Armstrong			 <&reset RESET_VID_LOCK>;
578fca9e95SNeil Armstrong		clocks = <&clkc CLKID_VPU>,
588fca9e95SNeil Armstrong			 <&clkc CLKID_VAPB>;
598fca9e95SNeil Armstrong		clock-names = "vpu", "vapb";
608fca9e95SNeil Armstrong	};
618fca9e95SNeil Armstrong};
628fca9e95SNeil Armstrong
638fca9e95SNeil Armstrong
64