17415b0b4STero KristoOMAP Control Module bindings
27415b0b4STero Kristo
37415b0b4STero KristoControl Module contains miscellaneous features under it based on SoC type.
47415b0b4STero KristoPincontrol is one common feature, and it has a specialized support
57415b0b4STero Kristodescribed in [1]. Typically some clock nodes are also under control module.
67415b0b4STero KristoSyscon is used to share register level access to drivers external to
77415b0b4STero Kristocontrol module driver itself.
87415b0b4STero Kristo
97415b0b4STero KristoSee [2] for documentation about clock/clockdomain nodes.
107415b0b4STero Kristo
117415b0b4STero Kristo[1] Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt
127415b0b4STero Kristo[2] Documentation/devicetree/bindings/clock/ti/*
137415b0b4STero Kristo
147415b0b4STero KristoRequired properties:
157415b0b4STero Kristo- compatible:	Must be one of:
167415b0b4STero Kristo		"ti,am3-scm"
177415b0b4STero Kristo		"ti,am4-scm"
187415b0b4STero Kristo		"ti,dm814-scrm"
197415b0b4STero Kristo		"ti,dm816-scrm"
207415b0b4STero Kristo		"ti,omap2-scm"
217415b0b4STero Kristo		"ti,omap3-scm"
227415b0b4STero Kristo		"ti,omap4-scm-core"
237415b0b4STero Kristo		"ti,omap4-scm-padconf-core"
241d6a332aSTony Lindgren		"ti,omap4-scm-wkup"
251d6a332aSTony Lindgren		"ti,omap4-scm-padconf-wkup"
26ed8509edSTero Kristo		"ti,omap5-scm-core"
27ed8509edSTero Kristo		"ti,omap5-scm-padconf-core"
28d919501fSTero Kristo		"ti,dra7-scm-core"
297415b0b4STero Kristo- reg:		Contains Control Module register address range
307415b0b4STero Kristo		(base address and length)
317415b0b4STero Kristo
327415b0b4STero KristoOptional properties:
337415b0b4STero Kristo- clocks:	clocks for this module
347415b0b4STero Kristo- clockdomains:	clockdomains for this module
357415b0b4STero Kristo
367415b0b4STero KristoExamples:
377415b0b4STero Kristo
387415b0b4STero Kristoscm: scm@2000 {
397415b0b4STero Kristo	compatible = "ti,omap3-scm", "simple-bus";
407415b0b4STero Kristo	reg = <0x2000 0x2000>;
417415b0b4STero Kristo	#address-cells = <1>;
427415b0b4STero Kristo	#size-cells = <1>;
437415b0b4STero Kristo	ranges = <0 0x2000 0x2000>;
447415b0b4STero Kristo
457415b0b4STero Kristo	omap3_pmx_core: pinmux@30 {
467415b0b4STero Kristo		compatible = "ti,omap3-padconf",
477415b0b4STero Kristo			     "pinctrl-single";
487415b0b4STero Kristo		reg = <0x30 0x230>;
497415b0b4STero Kristo		#address-cells = <1>;
507415b0b4STero Kristo		#size-cells = <0>;
517415b0b4STero Kristo		#interrupt-cells = <1>;
527415b0b4STero Kristo		interrupt-controller;
537415b0b4STero Kristo		pinctrl-single,register-width = <16>;
547415b0b4STero Kristo		pinctrl-single,function-mask = <0xff1f>;
557415b0b4STero Kristo	};
567415b0b4STero Kristo
577415b0b4STero Kristo	scm_conf: scm_conf@270 {
587415b0b4STero Kristo		compatible = "syscon";
597415b0b4STero Kristo		reg = <0x270 0x330>;
607415b0b4STero Kristo		#address-cells = <1>;
617415b0b4STero Kristo		#size-cells = <1>;
627415b0b4STero Kristo
637415b0b4STero Kristo		scm_clocks: clocks {
647415b0b4STero Kristo			#address-cells = <1>;
657415b0b4STero Kristo			#size-cells = <0>;
667415b0b4STero Kristo		};
677415b0b4STero Kristo	};
687415b0b4STero Kristo
697415b0b4STero Kristo	scm_clockdomains: clockdomains {
707415b0b4STero Kristo	};
717415b0b4STero Kristo}
727415b0b4STero Kristo
737415b0b4STero Kristo&scm_clocks {
747415b0b4STero Kristo	mcbsp5_mux_fck: mcbsp5_mux_fck {
757415b0b4STero Kristo		#clock-cells = <0>;
767415b0b4STero Kristo		compatible = "ti,composite-mux-clock";
777415b0b4STero Kristo		clocks = <&core_96m_fck>, <&mcbsp_clks>;
787415b0b4STero Kristo		ti,bit-shift = <4>;
797415b0b4STero Kristo		reg = <0x02d8>;
807415b0b4STero Kristo	};
817415b0b4STero Kristo};
82