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"
24ed8509edSTero Kristo		"ti,omap5-scm-core"
25ed8509edSTero Kristo		"ti,omap5-scm-padconf-core"
26d919501fSTero Kristo		"ti,dra7-scm-core"
277415b0b4STero Kristo- reg:		Contains Control Module register address range
287415b0b4STero Kristo		(base address and length)
297415b0b4STero Kristo
307415b0b4STero KristoOptional properties:
317415b0b4STero Kristo- clocks:	clocks for this module
327415b0b4STero Kristo- clockdomains:	clockdomains for this module
337415b0b4STero Kristo
347415b0b4STero KristoExamples:
357415b0b4STero Kristo
367415b0b4STero Kristoscm: scm@2000 {
377415b0b4STero Kristo	compatible = "ti,omap3-scm", "simple-bus";
387415b0b4STero Kristo	reg = <0x2000 0x2000>;
397415b0b4STero Kristo	#address-cells = <1>;
407415b0b4STero Kristo	#size-cells = <1>;
417415b0b4STero Kristo	ranges = <0 0x2000 0x2000>;
427415b0b4STero Kristo
437415b0b4STero Kristo	omap3_pmx_core: pinmux@30 {
447415b0b4STero Kristo		compatible = "ti,omap3-padconf",
457415b0b4STero Kristo			     "pinctrl-single";
467415b0b4STero Kristo		reg = <0x30 0x230>;
477415b0b4STero Kristo		#address-cells = <1>;
487415b0b4STero Kristo		#size-cells = <0>;
497415b0b4STero Kristo		#interrupt-cells = <1>;
507415b0b4STero Kristo		interrupt-controller;
517415b0b4STero Kristo		pinctrl-single,register-width = <16>;
527415b0b4STero Kristo		pinctrl-single,function-mask = <0xff1f>;
537415b0b4STero Kristo	};
547415b0b4STero Kristo
557415b0b4STero Kristo	scm_conf: scm_conf@270 {
567415b0b4STero Kristo		compatible = "syscon";
577415b0b4STero Kristo		reg = <0x270 0x330>;
587415b0b4STero Kristo		#address-cells = <1>;
597415b0b4STero Kristo		#size-cells = <1>;
607415b0b4STero Kristo
617415b0b4STero Kristo		scm_clocks: clocks {
627415b0b4STero Kristo			#address-cells = <1>;
637415b0b4STero Kristo			#size-cells = <0>;
647415b0b4STero Kristo		};
657415b0b4STero Kristo	};
667415b0b4STero Kristo
677415b0b4STero Kristo	scm_clockdomains: clockdomains {
687415b0b4STero Kristo	};
697415b0b4STero Kristo}
707415b0b4STero Kristo
717415b0b4STero Kristo&scm_clocks {
727415b0b4STero Kristo	mcbsp5_mux_fck: mcbsp5_mux_fck {
737415b0b4STero Kristo		#clock-cells = <0>;
747415b0b4STero Kristo		compatible = "ti,composite-mux-clock";
757415b0b4STero Kristo		clocks = <&core_96m_fck>, <&mcbsp_clks>;
767415b0b4STero Kristo		ti,bit-shift = <4>;
777415b0b4STero Kristo		reg = <0x02d8>;
787415b0b4STero Kristo	};
797415b0b4STero Kristo};
80