18c2ecf20Sopenharmony_ciOMAP Control Module bindings
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciControl Module contains miscellaneous features under it based on SoC type.
48c2ecf20Sopenharmony_ciPincontrol is one common feature, and it has a specialized support
58c2ecf20Sopenharmony_cidescribed in [1]. Typically some clock nodes are also under control module.
68c2ecf20Sopenharmony_ciSyscon is used to share register level access to drivers external to
78c2ecf20Sopenharmony_cicontrol module driver itself.
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciSee [2] for documentation about clock/clockdomain nodes.
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci[1] Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt
128c2ecf20Sopenharmony_ci[2] Documentation/devicetree/bindings/clock/ti/*
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciRequired properties:
158c2ecf20Sopenharmony_ci- compatible:	Must be one of:
168c2ecf20Sopenharmony_ci		"ti,am3-scm"
178c2ecf20Sopenharmony_ci		"ti,am4-scm"
188c2ecf20Sopenharmony_ci		"ti,dm814-scrm"
198c2ecf20Sopenharmony_ci		"ti,dm816-scrm"
208c2ecf20Sopenharmony_ci		"ti,omap2-scm"
218c2ecf20Sopenharmony_ci		"ti,omap3-scm"
228c2ecf20Sopenharmony_ci		"ti,omap4-scm-core"
238c2ecf20Sopenharmony_ci		"ti,omap4-scm-padconf-core"
248c2ecf20Sopenharmony_ci		"ti,omap4-scm-wkup"
258c2ecf20Sopenharmony_ci		"ti,omap4-scm-padconf-wkup"
268c2ecf20Sopenharmony_ci		"ti,omap5-scm-core"
278c2ecf20Sopenharmony_ci		"ti,omap5-scm-padconf-core"
288c2ecf20Sopenharmony_ci		"ti,omap5-scm-wkup-pad-conf"
298c2ecf20Sopenharmony_ci		"ti,dra7-scm-core"
308c2ecf20Sopenharmony_ci- reg:		Contains Control Module register address range
318c2ecf20Sopenharmony_ci		(base address and length)
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ciOptional properties:
348c2ecf20Sopenharmony_ci- clocks:	clocks for this module
358c2ecf20Sopenharmony_ci- clockdomains:	clockdomains for this module
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciExamples:
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ciscm: scm@2000 {
408c2ecf20Sopenharmony_ci	compatible = "ti,omap3-scm", "simple-bus";
418c2ecf20Sopenharmony_ci	reg = <0x2000 0x2000>;
428c2ecf20Sopenharmony_ci	#address-cells = <1>;
438c2ecf20Sopenharmony_ci	#size-cells = <1>;
448c2ecf20Sopenharmony_ci	ranges = <0 0x2000 0x2000>;
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci	omap3_pmx_core: pinmux@30 {
478c2ecf20Sopenharmony_ci		compatible = "ti,omap3-padconf",
488c2ecf20Sopenharmony_ci			     "pinctrl-single";
498c2ecf20Sopenharmony_ci		reg = <0x30 0x230>;
508c2ecf20Sopenharmony_ci		#address-cells = <1>;
518c2ecf20Sopenharmony_ci		#size-cells = <0>;
528c2ecf20Sopenharmony_ci		#interrupt-cells = <1>;
538c2ecf20Sopenharmony_ci		interrupt-controller;
548c2ecf20Sopenharmony_ci		pinctrl-single,register-width = <16>;
558c2ecf20Sopenharmony_ci		pinctrl-single,function-mask = <0xff1f>;
568c2ecf20Sopenharmony_ci	};
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci	scm_conf: scm_conf@270 {
598c2ecf20Sopenharmony_ci		compatible = "syscon";
608c2ecf20Sopenharmony_ci		reg = <0x270 0x330>;
618c2ecf20Sopenharmony_ci		#address-cells = <1>;
628c2ecf20Sopenharmony_ci		#size-cells = <1>;
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ci		scm_clocks: clocks {
658c2ecf20Sopenharmony_ci			#address-cells = <1>;
668c2ecf20Sopenharmony_ci			#size-cells = <0>;
678c2ecf20Sopenharmony_ci		};
688c2ecf20Sopenharmony_ci	};
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ci	scm_clockdomains: clockdomains {
718c2ecf20Sopenharmony_ci	};
728c2ecf20Sopenharmony_ci}
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_ci&scm_clocks {
758c2ecf20Sopenharmony_ci	mcbsp5_mux_fck: mcbsp5_mux_fck {
768c2ecf20Sopenharmony_ci		#clock-cells = <0>;
778c2ecf20Sopenharmony_ci		compatible = "ti,composite-mux-clock";
788c2ecf20Sopenharmony_ci		clocks = <&core_96m_fck>, <&mcbsp_clks>;
798c2ecf20Sopenharmony_ci		ti,bit-shift = <4>;
808c2ecf20Sopenharmony_ci		reg = <0x02d8>;
818c2ecf20Sopenharmony_ci	};
828c2ecf20Sopenharmony_ci};
83