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